c# - Azure 表存储在一个事务中读取和更新项目

标签 c# azure azure-table-storage

表存储中有什么方法可以读取然后更新记录吗?例如,在 SQL Server 中我将使用如下查询:

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();

当读取满足过滤器条件的值(“testValue”也更新为 1)时,是否有某种方法可以添加更新子句以及我的 where 子句?

最佳答案

不幸的是,这是不可能在一次操作中完成的。

您必须首先获取一个实体(第一个操作),更新它,然后将其保存回表中(第二个操作)。

关于c# - Azure 表存储在一个事务中读取和更新项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60344500/

相关文章:

Azure 表存储在插入时抛出异常 : (409) Conflict

azure - 从控制台应用程序访问用户和组

c# - GetSubKeyNames 不返回所有键

c# - 自 v1.1 以来,TaskDialog 中命令链接中的垂直空间

c# - Razor 语法错误

逻辑应用中的 Azure 服务总线队列错误

azure - SSRS 与 Azure SQL 报告 - 成本和实现

Azure 表更新并发问题

c# - Azure 存储表 ExecuteAsync 在 Retrieve TableOperation 上挂起

c# - 将 System.Drawing.Image 转换为 System.Windows.Controls.Image?