public async Task <IActionResult> Register(RegisterViewModelcs model) { if (ModelState.IsValid) { RegisterViewModelcs m = new RegisterViewModelcs { Role = model.Role }; var user = new IdentityUser { UserName = model.Email, Email = model.Email }; var result = await userManager.CreateAsync(user, model.Password); // nie dziala jak powinno IdentityResult role = await userManager.AddToRoleAsync(user, m.Role.ToString()); if (result.Succeeded && role.Succeeded) { await signInManager.SignInAsync(user, false); return(RedirectToAction("index", "home")); } foreach (var error in result.Errors) { ModelState.AddModelError("", error.Description); } } return(View(model)); }
public IActionResult Register(RegisterViewModelcs obj) { if (ModelState.IsValid) { MeuUserIdentity user = new MeuUserIdentity(); user.UserName = obj.UserName; user.Email = obj.Email; IdentityResult result = userManager.CreateAsync(user, obj.Password).Result; if (result.Succeeded) { if (!roleManager.RoleExistsAsync("NormalUser").Result) { MeuRoleIdentity role = new MeuRoleIdentity(); role.Name = "NormalUser"; role.Descricao = "Realiza operação básicas."; IdentityResult roleResult = roleManager.CreateAsync(role).Result; if (!roleResult.Succeeded) { ModelState.AddModelError("", "Error ao criar perfil!"); return(View(obj)); } } userManager.AddToRoleAsync(user, "NormalUser").Wait(); return(RedirectToAction("Login", "Account")); } } return(View(obj)); }