public ValidationResult Add(Buyer buyer) { BeginTransaction(); var buyerModel = buyer.ToModel(); ValidationResult = _buyerService.Add(buyerModel).ToViewModel(); if (ValidationResult.IsValid) { Commit(); } return(ValidationResult); }
public async Task <IActionResult> KayitOl(RegisterModel model) { if (!ModelState.IsValid) { return(View(model)); } var user = new ApplicationUser { UserName = model.UserName, Email = model.Email }; var result = await _userManager.CreateAsync(user, model.Password); if (result.Succeeded) { var code = await _userManager.GenerateEmailConfirmationTokenAsync(user); var callBackUrl = Url.Action("ConfirmEmail", "Hesap", new { userId = user.Id, token = code }); _cartService.InitializeCart(user.Id); 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:44301{callBackUrl}'>tıklayınız.</a>"); var buyer = new Buyer { BuyerName = user.UserName, Email = user.Email, Adress = model.Adress, PhoneNumber = model.PhoneNumber, ProfileImageUrl = model.ProfileImageUrl, RegistrationDate = DateTime.Now.ToString("yyyy-mm-dd hh:mm:ss") }; _buyerService.Add(buyer); var buyerId = buyer.BuyerId; _userAndBuyersService.Add(new UsersAndBuyers { BuyerId = buyerId, UserId = user.Id }); var addToRole = await _userManager.AddToRoleAsync(user, "Buyer"); if (addToRole.Succeeded) { return(RedirectToAction("GirisYap", "Hesap")); } } ModelState.AddModelError("", "Bilinmeyen hata oluştu lütfen tekrar deneyiniz."); return(View(model)); }