// thêm tài khoản mới vào hệ thống public bool AddAccount(RegisterViewModel model) { model.Password = Hash(model.Password); string result = dal.AddAccount(model); if (result != null) { SendActivationEmail(model, result); return true; } return false; }
public string AddAccount(RegisterViewModel model) { User user = new User(); user.UserName = model.UserName; user.PassWord = model.Password; user.Email = model.Email; user.Admin = false; user.FirstName = model.FirstName; user.LastName = model.LastName; user.Phone = model.Phone; user.Products = null; string activation_code = Guid.NewGuid().ToString(); user.ActiveCode = activation_code; try { db.Users.Add(user); db.SaveChanges(); } catch (System.Data.Entity.Validation.DbEntityValidationException dbEx) { Exception raise = dbEx; foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { string message = string.Format("{0}:{1}", validationErrors.Entry.Entity.ToString(), validationError.ErrorMessage); // raise a new exception nesting // the current instance as InnerException raise = new InvalidOperationException(message, raise); } } return null; } return activation_code; }
public ActionResult Register(RegisterViewModel model) { if (ModelState.IsValid) { if (bus.CheckExistenceAccount(model.Email, model.UserName)) { if (bus.AddAccount(model)) { ViewBag.Message = "Tài khoản đã được ghi nhận trong hệ thống. Xin vui lòng kiểm tra email để kích hoạt tài khoản."; return View("Result"); } else { ViewBag.Alert = "Chúng tôi không thể gửi email kích hoạt đến email của bạn. Xin lỗi vì sự bất tiện này."; return View("Result"); } } else { ViewBag.Message = "Tài khoản đã tồn tại trong hệ thống."; return View("Register"); } } return View(model); }
// send mail active account private void SendActivationEmail(RegisterViewModel model, string Active_code) { using (MailMessage mm = new MailMessage("*****@*****.**", model.Email)) { mm.Subject = "Email xác nhận tài khoản trên website Trao đổi đồ cũ"; string body = "Thân chào, " + model.UserName + ","; body += "<br /><br />Cảm ơn bạn đã đăng ký tài khoản trên website Trao đổi đồ cũ, xin hãy click vào đường link bên dưới để kích hoạt tài khoản."; body += "<br /><a href = 'http://" + HttpContext.Current.Request.Url.Host + ":" + HttpContext.Current.Request.Url.Port + "/Account/Activate?Username="******"&ActivationCode=" + Active_code + "'>Click vào đây để kích hoạt tài khoản.</a>"; body += "<br /><br />Thanks"; mm.Body = body; mm.IsBodyHtml = true; SmtpClient smtp = new SmtpClient(); smtp.Host = "smtp.gmail.com"; smtp.EnableSsl = true; NetworkCredential NetworkCred = new NetworkCredential("*****@*****.**", "khoahoangtuankiet"); smtp.UseDefaultCredentials = true; smtp.Credentials = NetworkCred; smtp.Port = 587; smtp.Send(mm); } }