public async Task<ActionResult> ProviderRegister(ProviderRegisterViewModel model) { if(ModelState.IsValid) { var user = model.GetUser(); var provider = model.GetProviderDto(); var phone = model.GetPhone(); var address = model.GetAddress(); var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { await _hcSerivice.CreateProviderAsync(provider, phone, address); var currentUser = await UserManager.FindByEmailAsync(user.Email); var roleResult = await UserManager.AddToRoleAsync(currentUser.Id, "Provider"); UserManager.AddClaim(currentUser.Id, new Claim(ClaimTypes.Role, "Provider")); if (roleResult.Succeeded) { await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); return RedirectToAction("Index", "Home"); } AddErrors(roleResult); } AddErrors(result); } return View(model); }
public async Task<ActionResult> ProviderRegister() { var model = new ProviderRegisterViewModel { SexOptions = new List<SelectizeItem<int>> { new SelectizeItem<int>(Enum.GetName(typeof (Sex), Sex.Male), (int) Sex.Male), new SelectizeItem<int>(Enum.GetName(typeof (Sex), Sex.Female), (int) Sex.Female) } }; return View(model); }