public ActionResult Register(RegistrationViewModel model, HttpPostedFileBase ImageFile) { bool Status = false; string message = ""; // Model Validation if (ModelState.IsValid) { #region //Email is already Exist var isExist = services.UsernameExists(model.Email); if (isExist) { ModelState.AddModelError("EmailExist", "Email already exist"); Status = false; message = "Email already exist"; ViewBag.Message = message; ViewBag.Status = Status; return(View(model)); } #endregion #region Generate Activation Code model.ActivationCode = Guid.NewGuid(); #endregion #region Password Hashing model.Password = helers.HashPassword(model.Password); #endregion model.isEmailVerifield = false; if (ImageFile != null) { string ImageName = System.IO.Path.GetFileName(ImageFile.FileName); string physicalPath = Server.MapPath("~/Passports/" + ImageName); // save image in folder ImageFile.SaveAs(physicalPath); tbl_Users user = new tbl_Users() { UserName = model.UserName, FirstName = model.FirstName, LastName = model.LastName, Email = model.Email, DOB = model.DOB, Password = model.Password, ActivationCode = model.ActivationCode, ImageName = ImageName, AddedON = DateTime.Now, isActive = true }; #region Save to Database services.insert(user); //Send Email to User SendVerificationLinkEmail(model.Email, model.ActivationCode.ToString()); message = "Registration successfully done. Account activation link " + " has been sent to your email id:" + model.Email; Status = true; } else { message = "Error while file uploading."; } #endregion } else { message = "Invalid Request"; } ViewBag.Message = message; ViewBag.Status = Status; return(View(model)); }