Так что на самом деле вам нужно сначала прочитать и принять решение о вставке или обновлении.

отаю с Windows Azure Table Storage и имею простое требование: добавить новую строку, перезаписав любую существующую строку этим PartitionKey / RowKey. Однако сохранение изменений всегда вызывает исключение, даже если я передаю параметр ReplaceOnUpdate:

tableServiceContext.AddObject(TableName, entity);
tableServiceContext.SaveChangesWithRetries(SaveChangesOptions.ReplaceOnUpdate);

Если сущность уже существует, она выдает:

System.Data.Services.Client.DataServiceRequestException: An error occurred while processing this request. ---> System.Data.Services.Client.DataServiceClientException: <?xml version="1.0" encoding="utf-8" standalone="yes"?>
<error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">
  <code>EntityAlreadyExists</code>
  <message xml:lang="en-AU">The specified entity already exists.</message>
</error>

Мне действительно нужно сначала вручную запросить существующую строку и вызватьDeleteObject в теме? Это кажется очень медленным. Конечно, есть лучший способ?

Ответы на вопрос(5)

Ваш ответ на вопрос