public async Task <ActionResult> Register(RegisterViewModel model) { if (ModelState.IsValid) { var user = new ApplicationUser() { UserName = model.UserName }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { var role = RoleManager.FindById(model.Role); UserManager.AddToRole(user.Id, role.Name); var branch = BranchManager.FindBranchById(model.Branch); BranchManager.AddUserToBranch(user.Id, branch.Id); } else { AddErrors(result); } } // If we got this far, something failed, redisplay form return(View(model)); }
public async Task <JsonResult> RegisterNewUser(RegisterViewModel model) { if (ModelState.IsValid) { var userexist = UserManager.FindByNameAsync(model.UserName); if (userexist != null && userexist.Result != null && userexist.Result.Id != null) { return(Json(new { code = "02", message = userexist }, JsonRequestBehavior.AllowGet)); } var user = new ApplicationUser() { UserName = model.UserName, Email = model.Email, EmailConfirmed = true }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { var role = RoleManager.FindById(model.Role); UserManager.AddToRole(user.Id, role.Name); var branch = BranchManager.FindBranchById(model.Branch); BranchManager.AddUserToBranch(user.Id, branch.Id); return(Json(new { code = "00", message = result }, JsonRequestBehavior.AllowGet)); } else { throw new Exception("Cannot Create User"); } } throw new Exception("Invalid Data"); }