public SimpleMembershipInitializer() { try { using (var context = new UsersContext()) { if (!context.DatabaseExists()) { context.CreateDatabase(); } } WebSecurity.InitializeDatabaseConnection("AccountConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true); if (!Roles.RoleExists(JournalStatic.AdminRole)) Roles.CreateRole(JournalStatic.AdminRole); if (!Roles.RoleExists(JournalStatic.SchoolAdminRole)) Roles.CreateRole(JournalStatic.SchoolAdminRole); if (!Roles.RoleExists(JournalStatic.Teacher)) Roles.CreateRole(JournalStatic.Teacher); if (!Roles.RoleExists(JournalStatic.Parent)) Roles.CreateRole(JournalStatic.Parent); if (!Roles.RoleExists(JournalStatic.Pupil)) Roles.CreateRole(JournalStatic.Pupil); } catch (Exception ex) { throw new InvalidOperationException("The ASP.NET Simple Membership database could not be initialized. For more information, please see http://go.microsoft.com/fwlink/?LinkId=256588", ex); } }
public PartialViewResult Register(RegisterModel model) { if (ModelState.IsValid) { // Attempt to register the user try { using (var db = new UsersContext()) { if (!WebSecurity.UserExists(model.UserName)) { var userProfile = new UserProfile(); userProfile.SchoolId = CurrentUser.School.SchoolId; userProfile.UserName = model.UserName; db.UserProfiles.InsertOnSubmit(userProfile); db.SubmitChanges(); WebSecurity.CreateAccount(model.UserName, model.Password); var newUserId = WebSecurity.GetUserId(model.UserName); var userDetails = new UserDetails(); userDetails.GlobalProfileID = newUserId; userDetails.FirstName = model.FirstName; userDetails.LastName = model.LastName; userDetails.PatronymicName = model.PatronymicName; userDetails.DateOfBirth = model.DateOfBirth; userDetails.Email = model.Email; JournalContext.UserDetails.InsertOnSubmit(userDetails); JournalContext.SubmitChanges(); if (model.SendEmail) { var body = string.Format("Уважаемый {0} {1} {2}!{3}Вы успешно зарегистрированы на портале \"Диалог\".{3} Логин: {4}{3} Пароль: {5}", userDetails.LastName, userDetails.FirstName, userDetails.PatronymicName, Environment.NewLine, model.UserName, model.Password); EmailService.EmailSender.SendText(userDetails.Email, "Регистрация на портале \"Диалог\"", body); } } } return null; } catch (MembershipCreateUserException e) { ModelState.AddModelError("", AccountController.ErrorCodeToString(e.StatusCode)); } } // If we got this far, something failed, redisplay form return PartialView("_Register", model); }
public ActionResult Register(RegisterModel model) { if (ModelState.IsValid) { // Attempt to register the user try { using (var db = new UsersContext()) { if (!WebSecurity.UserExists(model.UserName)) { var userProfile = new UserProfile(); userProfile.SchoolId = model.SchoolId; userProfile.UserName = model.UserName; db.UserProfiles.InsertOnSubmit(userProfile); db.SubmitChanges(ConflictMode.ContinueOnConflict); } } WebSecurity.CreateAccount(model.UserName, model.Password); WebSecurity.Login(model.UserName, model.Password); //return RedirectToAction("Index", "Home"); } catch (MembershipCreateUserException e) { ModelState.AddModelError("", ErrorCodeToString(e.StatusCode)); } } using (var db = new UsersContext()) { if (!db.DatabaseExists()) db.CreateDatabase(); ViewBag.Schools = db.Schools.ToList(); } // If we got this far, something failed, redisplay form return View(model); }
public ActionResult Register() { using (var db = new UsersContext()) { if(!db.DatabaseExists()) db.CreateDatabase(); ViewBag.Schools = db.Schools.ToList(); } return View(); }