Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @using (Html.BeginForm("Register", "User", FormMethod.Post))
- {
- <div>
- @Html.TextBoxFor(m => m.FirstName, new { placeholder = "First name", @class = "form-control", @type = "text" })
- </div>
- <div>
- @Html.TextBoxFor(m => m.LastName, new { placeholder = "Last name", @class = "form-control", @type = "text" })
- </div>
- <div>
- @Html.TextBoxFor(m => m.Email, new { placeholder = "Email", @class = "form-control", @type = "email" })
- </div>
- <div>
- @Html.TextBoxFor(m => m.Password, new { placeholder = "Password", @class = "form-control", @type = "password" })
- </div>
- <div>
- @Html.TextBoxFor(m => m.PasswordConfirm, new { placeholder = "Confirm password", @class = "form-control", @type = "password" })
- </div>
- <div>
- @Html.DropDownListFor(model => model.SelectedCountryId, Model.Countries, new { @class="select2_single form-control select2-hidden-accessible", @tabindex = "-1" })
- </div>
- <div>
- <input class="btn btn-default submit" type="submit" value="Register" />
- </div>
- }
- public class UserRegistrationViewModel
- {
- [Required(ErrorMessage = "First name is required!")]
- public string FirstName { get; set; }
- [Required(ErrorMessage = "Last name is required!")]
- public string LastName { get; set; }
- [Required(ErrorMessage = "Email name is required!")]
- public string Email { get; set; }
- [Required(ErrorMessage = "Password name is required!")]
- public string Password { get; set; }
- [Required(ErrorMessage = "Password confirmation name is required!")]
- public string PasswordConfirm { get; set; }
- public int SelectedCountryId { get; set; }
- [Required(ErrorMessage = "Country needs to be selected!")]
- public SelectList Countries { get; set; }
- }
- public ActionResult Index()
- {
- var model = new UserRegistrationViewModel();
- var countries = Connection.ctx.Countries.OrderBy(x => x.CountryName).ToList();
- model.Countries = new SelectList(countries, "CountryId", "CountryName");
- return View(model);
- }
- [HttpPost]
- public ActionResult Register(UserRegistrationViewModel model)
- {
- if (ModelState.IsValid)
- {
- var user = new Users();
- user.FirstName = model.FirstName;
- user.LastName =model.LastName;
- user.Email = model.Email;
- user.PasswordSalt = Helpers.PasswordHelper.CreateSalt(40);
- user.PasswordHash = Helpers.PasswordHelper.CreatePasswordHash(model.Password, user.PasswordSalt);
- user.CountryId = Convert.ToInt32(model.SelectedCountryId);
- user.Active = true;
- Connection.ctx.Users.Add(user);
- Connection.ctx.SaveChanges();
- var role = new UserRoles();
- role.RoleId = 2;
- role.UserId = user.UserId;
- role.Active = true;
- user.UserRoles.Add(role);
- Connection.ctx.SaveChanges();
- return RedirectToAction("Index");
- }
- return null;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement