TableStorage.ReplaceUpdateEntity

TableStorage.ReplaceUpdateEntity

TableStorage 的对象有一个方法 ReplaceUpdateEntity 用于 AzureStorage 部分。我试着用谷歌搜索它可能做什么或得到一个例子。欢迎任何简短的描述或指向此的 link。

TableStorageTestEntity tableStorageTestEntity = new TableStorageTestEntity()
        {
            TableId = Guid.NewGuid(),
            TablePurpose = "UpdateEntity"                
        };

        string partitionKey = "31072015";
        string rowKey = "0108201551";
        bool result = this.tableStorage.ReplaceUpdateEntity(this.TableName, partitionKey, rowKey, tableStorageTestEntity);
        Assert.IsTrue(result);

其实我是运行这个测试,测试失败了。所以我想了解一下这个方法。

您要找的方法是InsertOrReplace。如果实体不存在,此操作将创建一个实体,否则它将通过用新值替换其所有属性来更新实体。这是示例代码:

        var account = new CloudStorageAccount(new StorageCredentials(accountName, accountKey), true);
        var tableClient = account.CreateCloudTableClient();
        var table = tableClient.GetTableReference("Address");
        var entity = new DynamicTableEntity("pk", "rk");
        entity.Properties.Add("Attribute1", new EntityProperty("Attribute 1 Value"));
        TableOperation upsertOperation = TableOperation.InsertOrReplace(entity);
        table.Execute(upsertOperation);