public async Task <string> UpsertItemAsync(T item) { if (item.Id == null) { return(await CreateItemAsync(item)); } var oldItem = await ReadItemAsync(a => a.Id == item.Id); UpdateHelper.UpdateItem(oldItem, item); await ReplaceItemAsync(oldItem); return(item.Id); }
public async Task <string> UpsertItemAsync(T item) { if (item.Id == null) { return(await CreateItemAsync(item)); } Uri documentUri = UriFactory.CreateDocumentUri(_databaseId, _collectionId, item.Id); var oldItem = await Client.ReadDocumentAsync <T>(documentUri); if (oldItem == null) { return(await CreateItemAsync(item)); } UpdateHelper.UpdateItem(oldItem, item); await ReplaceItemAsync(oldItem); return(item.Id); }