Azure Хранение таблицы чтения и обновления элементов в одной транзакции - PullRequest
1 голос
/ 21 февраля 2020

Есть ли способ хранения таблицы для чтения, а затем обновления записи? Например, на сервере 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 Ответ

1 голос
/ 22 февраля 2020

К сожалению, это невозможно за одну операцию.

Сначала необходимо получить объект (1-я операция), обновить его и затем сохранить обратно в таблицу (2-я операция).

...