public async Task <IActionResult> SignUp(AppUserAddViewModel model) { if (ModelState.IsValid) { AppUser user = new AppUser { UserName = model.Username, Email = model.Email, Name = model.Name, Surname = model.Surname }; var result = await _userManager.CreateAsync(user, model.Password); if (result.Succeeded) { var addRoleResult = await _userManager.AddToRoleAsync(user, "Member"); if (addRoleResult.Succeeded) { return(RedirectToAction("SignUp")); } foreach (var item in addRoleResult.Errors) { ModelState.AddModelError("", item.Description); } } foreach (var item in result.Errors) { ModelState.AddModelError("", item.Description); } } return(View(model)); }
public async Task <IActionResult> Register(AppUserAddViewModel model) { if (ModelState.IsValid) { AppUser user = new AppUser() { UserName = model.Userad, Name = model.ad, Surname = model.Surad, //PasswordHash = model.Password, Email = model.Email, }; var identityResult = await _userManager.CreateAsync(user, model.Password); if (identityResult.Succeeded) { var AddRoleResult = await _userManager.AddToRoleAsync(user, "Member"); if (AddRoleResult.Succeeded) { return(RedirectToAction("Index")); } foreach (var error in AddRoleResult.Errors) { ModelState.AddModelError("", error.Description); } } foreach (var error in identityResult.Errors) { ModelState.AddModelError("", error.Description); } } return(View(model)); }
public async Task <IActionResult> Register(AppUserAddViewModel model) { if (ModelState.IsValid) { AppUser user = new AppUser() { UserName = model.UserName, Email = model.Email, FirstName = model.FirstName, LastName = model.LastName, }; var result = await _userManager.CreateAsync(user, model.Password); if (result.Succeeded) { var addRoleResult = await _userManager.AddToRoleAsync(user, "Member"); if (addRoleResult.Succeeded) { string confirmationToken = await _userManager.GenerateEmailConfirmationTokenAsync(user); string link = Url.Action("ConfirmEmail", "Home", new { userId = user.Id, token = confirmationToken }, protocol: HttpContext.Request.Scheme); Helper.EmailConfirmation.SendEmail(link, user.Email); //TODO : Email gönderim işlemine bakılacak //// generate token //var code = await _userManager.GenerateEmailConfirmationTokenAsync(user); //code = WebEncoders.Base64UrlEncode(Encoding.UTF8.GetBytes(code)); //var callbackUrl = Url.Page("/Home/ConfirmEmail", pageHandler: null, values: new { area = "Identity", userId = user.Id, code = code }, protocol: Request.Scheme); ////email //await _emailSender.SendEmailAsync(model.Email, "Hesabınızı onaylayınız.", // $"Lütfen email hesabınızı onaylamak için linke <a href='{HtmlEncoder.Default.Encode(callbackUrl)}'>tıklayınız.</a>."); return(RedirectToAction("Index", "Home")); } foreach (var item in addRoleResult.Errors) { ModelState.AddModelError("", item.Description); } } foreach (var item in result.Errors) { ModelState.AddModelError("", item.Description); } } return(View(model)); }
public async Task <IActionResult> Register(AppUserAddViewModel model) { if (ModelState.IsValid) { AppUser user = new AppUser { Name = model.Name, Surname = model.Surname, UserName = model.UserName, Email = model.Email }; var result = await _userManager.CreateAsync(user, model.Password); if (result.Succeeded) { var roleResult = await _userManager.AddToRoleAsync(user, "Member"); if (roleResult.Succeeded) { return(RedirectToAction("Login")); } else { foreach (var item in roleResult.Errors) { ModelState.AddModelError("", item.Description); } } } else { foreach (var error in result.Errors) { if (error.Code.Equals("DuplicateUserName")) { ModelState.AddModelError("DuplicateUserName", $"{model.UserName} adlı kullanıcı adı zaten alınmış!"); } else { ModelState.AddModelError("", error.Description); } } } } return(View(model)); }
public async Task <IActionResult> Register(AppUserAddViewModel model) { if (ModelState.IsValid) { AppUser user = new AppUser() { UserName = model.UserName, Email = model.Email, FirstName = model.FirstName, LastName = model.LastName, }; var result = await _userManager.CreateAsync(user, model.Password); if (result.Succeeded) { var addRoleResult = await _userManager.AddToRoleAsync(user, "Member"); if (addRoleResult.Succeeded) { // generate token var code = await _userManager.GenerateEmailConfirmationTokenAsync(user); var url = Url.Action("ConfirmEmail", "Home", new { userId = user.Id, token = code }); //email await _emailSender.SendEmailAsync(model.Email, "Hesabınızı onaylayınız.", $"Lütfen email hesabınızı onaylamak için linke <a href='http://localhost:50830{url}'>tıklayınız.</a>"); return(RedirectToAction("Index", "Home")); } foreach (var item in addRoleResult.Errors) { ModelState.AddModelError("", item.Description); } } foreach (var item in result.Errors) { ModelState.AddModelError("", item.Description); } } return(View(model)); }