Azure Table 存储在一次事务中读取和更新项目
Azure Table storage read and update items in one transaction
在table存储中有什么方法可以读取然后更新记录吗?例如在 SQL 服务器中我会使用这样的查询:
UPDATE table
SET
testValue = 1
OUTPUT
inserted.columnA,
inserted.columnB,
inserted.columnC
WHERE
testValue = 0
目前我的代码如下所示:
var filter = "testValue eq 0";
var rangeQuery = new TableQuery<AzStorageEntityAdapter<T>>().Where(filter);
var result = _cloudTable.ExecuteQuery(rangeQuery);
var azStorageEntities = result.ToList();
IList<T> results = azStorageEntities.Select(r => r.InnerObject).ToList();
有什么方法可以在我的 where 子句读取满足 'testValue' 也更新为 1 的过滤条件的值时添加更新子句吗?
很遗憾,一次操作是不可能的。
您必须先获取一个实体(第 1 次操作),更新它,然后将其保存回 table(第 2 次操作)。
在table存储中有什么方法可以读取然后更新记录吗?例如在 SQL 服务器中我会使用这样的查询:
UPDATE table
SET
testValue = 1
OUTPUT
inserted.columnA,
inserted.columnB,
inserted.columnC
WHERE
testValue = 0
目前我的代码如下所示:
var filter = "testValue eq 0";
var rangeQuery = new TableQuery<AzStorageEntityAdapter<T>>().Where(filter);
var result = _cloudTable.ExecuteQuery(rangeQuery);
var azStorageEntities = result.ToList();
IList<T> results = azStorageEntities.Select(r => r.InnerObject).ToList();
有什么方法可以在我的 where 子句读取满足 'testValue' 也更新为 1 的过滤条件的值时添加更新子句吗?
很遗憾,一次操作是不可能的。
您必须先获取一个实体(第 1 次操作),更新它,然后将其保存回 table(第 2 次操作)。