public async Task DeleteAsync() { if (Customer == null) { Message = "Please select a customer to delete."; return; } var entity = TableCustomers.FirstOrDefault(c => c.RowKey == Customer.RowKey.ToString()); if (entity == null) { Customers.Remove(Customer); Message = ""; return; } var deleteOperation = TableOperation.Delete(entity); await customersTable.ExecuteAsync(deleteOperation); Customers.Remove(Customer); Message = ""; }
public async Task SaveAsync() { if (!Validate()) { return; } foreach (var item in Customers.Where(c => c.RowKey != Guid.Empty)) { var entity = TableCustomers.FirstOrDefault(c => c.PartitionKey == item.LastName && c.RowKey == item.RowKey.ToString()); entity.FirstName = item.FirstName; entity.EmailAddress = item.EmailAddress; entity.PhoneNumber = item.PhoneNumber; var update = TableOperation.Replace(entity); await customersTable.ExecuteAsync(update); } var batchOperation = new TableBatchOperation(); foreach (var item in Customers.Where(c => c.RowKey == Guid.Empty)) { var customer = new CustomerEntity(item.LastName); customer.FirstName = item.FirstName; customer.EmailAddress = item.EmailAddress; customer.PhoneNumber = item.PhoneNumber; batchOperation.Insert(customer); item.RowKey = Guid.Parse(customer.RowKey); TableCustomers.Add(customer); } if (batchOperation.Any()) { await customersTable.ExecuteBatchAsync(batchOperation); } Message = ""; }