public async Task <model.ListItem> UpsertListItem(string userId, model.ListItem listItem) { var list = await GetList(userId, listItem.ListId); if (listItem.Id == Guid.Empty) { listItem.Id = Guid.NewGuid(); } var existingItem = list.Items.FirstOrDefault(li => li.Id == listItem.Id); if (existingItem != null) { existingItem.Question = listItem.Question; existingItem.Answer = listItem.Answer; } else { list.Items.Add(listItem); } var storageList = list.Map(userId); var listUpdated = await UpdateStorageList(storageList); return(existingItem ?? listItem); }
public Task <model.ListItem> UpsertListItem(string userId, model.ListItem listItem) { //if (listItem.ListId == default(int)) throw new ArgumentException("No listId set"); return(_storage.UpsertListItem(userId, listItem)); }