2016-08-26 8 views
1

Привет я работаю над лазурной таблицы «T1» и эта таблица имеет список множества сущностейКак обновить одно свойство в лазурной таблицы сущности

Primarykey RowKey P1 P2 
PP   R1  5 10 
PP   R2  6 11 

Теперь предположим, что я хочу, чтобы обновить только P2 собственность и дон» t хочет коснуться свойства P1 - возможно ли это, чтобы обновить одно свойство в azure table entity. Помните я не хочу коснуться P1 свойства соз него непрерывно обновляемой по другой функции

ответ

5

Операцию вы хотите выполнить это Merge Entity. Из документации API REST:

Операция Merge Entity обновляет существующий объект, обновляя свойства объекта . Эта операция не заменяет существующий объект , как это делает операция Update Entity.

Вот пример кода, который вы можете использовать:

static void MergeEntityExample() 
    { 
     var cred = new StorageCredentials(accountName, accountKey); 
     var account = new CloudStorageAccount(cred, true); 
     var client = account.CreateCloudTableClient(); 
     var table = client.GetTableReference("TableName"); 
     var entity = new DynamicTableEntity("PartitionKey", "RowKey"); 
     entity.ETag = "*"; 
     entity.Properties.Add("P2", new EntityProperty(12)); 
     var mergeOperation = TableOperation.Merge(entity); 
     table.Execute(mergeOperation); 
    } 

Приведенный выше код будет обновлять только свойство «P2» в сущности, и не будет касаться других свойств.