public ActionResult Create([Bind(Exclude = "UserRole_ID,GUID,IsUserVerified")] User user) { bool Status = false; string Message = ""; try { if (ModelState.IsValid) { var IsExist = IsEmailExists(user.UserName); if (IsExist) { ModelState.AddModelError("EmailExist", "Email already exists"); return(View(user)); } // Generate activation code for employee user.GUID = new Guid(); //Hash passwords //user.ConfirmPassword = user.UserPassword; //user.ConfirmPassword = EncryptPassword.Hash(user.ConfirmPassword); user.UserPassword = EncryptPassword.Hash(user.UserPassword); user.IsUserVerified = false; //Save information to database using (The_Book_MarketEntities1 db = new The_Book_MarketEntities1()) { //db.Configuration.ValidateOnSaveEnabled = false; db.Users.Add(user); db.SaveChanges(); sendVerificationLinkEmail(user.UserName, user.GUID.ToString()); Message = "Account Registration successfull. Account activation link" + "has been sent to your email address:" + user.UserName; return(RedirectToAction("Index")); } } ViewBag.UserRole_ID = new SelectList(db.User_Role, "UserRole_ID", "UserRole_Description", user.UserRole_ID); return(View(user)); } 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); } } throw raise; } }
public bool IsEmailExists(string username) { using (The_Book_MarketEntities1 db = new The_Book_MarketEntities1()) { var user = db.Users.Where(a => a.UserName == username).FirstOrDefault(); return(user == null ? false : true); } }