Ejemplo n.º 1
0
        public static async Task UpdateAsync <TPayload>(
            this CloudTable table, TPayload payload,
            KeysPair keys)
            where TPayload : class, new()
        {
            Ensure.ArgumentNotNull(keys, nameof(keys));
            Ensure.ArgumentNotNull(payload, nameof(payload));
            Ensure.ArgumentNotNull(table, nameof(table));

            var entity = new DynamicTableEntity(keys.PartitionKey, keys.RowKey);

            entity.Timestamp  = DateTime.UtcNow;
            entity.Properties = EntityPropertyConverter.Flatten(payload, new OperationContext());
            entity.ETag       = "*";

            var batch = new TableBatchOperation();

            batch.Replace(entity);

            await table.ExecuteBatchAsync(batch)
            .ConfigureAwait(false);

            await table.ExecuteBatchAsync(batch)
            .ConfigureAwait(false);
        }
Ejemplo n.º 2
0
        public static async Task RemoveAsync(
            this CloudTable table,
            KeysPair keys)
        {
            var entity = new DynamicTableEntity(keys.PartitionKey, keys.RowKey);

            entity.ETag = "*";
            await table.ExecuteAsync(TableOperation.Delete(entity))
            .ConfigureAwait(false);
        }