public async Task CreateCategoryAsync(CreateCategoryBindingModel model) { await _db.Categories .AddAsync(new Category() { Name = model.Name, Gender = model.Gender, Type = model.Group }); await _db.SaveChangesAsync(); }
public async Task AddSubscriberAsync(string email) { var subscriber = await _db.Subscribers.FirstOrDefaultAsync(s => s.Email == email); if (subscriber == null) { await _db.Subscribers.AddAsync(new Subscriber() { Email = email }); await _db.SaveChangesAsync(); } }
public async Task UpdatePersonalDetails(User user, PersonalDetailsBindingModel model) { user.FirstName = model.FirstName; user.LastName = model.LastName; user.BillingAddress = model.BillingAddress; user.BillingAddressLine2 = model.BillingAddressLine2; user.Country = model.Country; user.City = model.City; user.PostalCode = model.PostalCode; await _db.SaveChangesAsync(); var phoneNumber = await _userManager.GetPhoneNumberAsync(user); if (model.PhoneNumber != phoneNumber) { var setPhoneResult = await _userManager.SetPhoneNumberAsync(user, model.PhoneNumber); if (!setPhoneResult.Succeeded) { var userId = await _userManager.GetUserIdAsync(user); throw new InvalidOperationException($"Unexpected error occurred setting phone number for user with ID '{userId}'."); } } var email = await _userManager.GetEmailAsync(user); if (model.Email != email) { var setEmailResult = await _userManager.SetEmailAsync(user, model.Email); if (!setEmailResult.Succeeded) { var userId = await _userManager.GetUserIdAsync(user); throw new InvalidOperationException($"Unexpected error occurred setting email for user with ID '{userId}'."); } var setUserNameResult = await _userManager.SetUserNameAsync(user, model.Email); if (!setUserNameResult.Succeeded) { var userId = await _userManager.GetUserIdAsync(user); throw new InvalidOperationException($"Unexpected error occurred setting name for user with ID '{userId}'."); } } }