public void UpdateRole(webpages_Roles roleInput) { if (ModelState.IsValid) { try { var repo = new Durandal2UserMaintContext(); var role = (from v in repo.webpages_Roles where v.RoleId == roleInput.RoleId select v).FirstOrDefault(); if (role != null) { role.RoleName = roleInput.RoleName; repo.SaveChanges(); } else { throw new Exception("Role to update not found"); } } catch (Exception) { throw; } } else { string errors = ModelState.Values.SelectMany(modelState => modelState.Errors).Aggregate(string.Empty, (current, error) => current + (error.ErrorMessage + Environment.NewLine)); throw new Exception(errors); } }
public IQueryable <RoleGridModel> ListRoles() { var repo = new Durandal2UserMaintContext(); return(from v in repo.webpages_Roles select new RoleGridModel { RoleId = v.RoleId, RoleName = v.RoleName }); }
public IQueryable <UserGridModel> ListUsers() { var repo = new Durandal2UserMaintContext(); return(from u in repo.UserProfiles from m in repo.webpages_Membership where u.UserId == m.UserId select new UserGridModel { UserName = u.UserName, CreateDate = m.CreateDate, LastPasswordChange = m.PasswordChangedDate, IsActive = u.IsActive, Email = u.UserEmail }); }
public void AddRoleToUser(UserRoleEditModel userRole) { if (ModelState.IsValid) { try { //I tried using the Roles.AddUserToRole but I was getting a foreign key error. So I decided this way. if (Roles.IsUserInRole(userRole.UserName, userRole.RoleName)) { throw new Exception("User is already assigned that role"); } var repo = new Durandal2UserMaintContext(); var user = (from v in repo.UserProfiles select v).FirstOrDefault(x => x.UserName == userRole.UserName); if (user == null) { throw new Exception("User to update not found"); } else { var role = (from v in repo.webpages_Roles select v).FirstOrDefault(x => x.RoleName == userRole.RoleName); if (role == null) { throw new Exception("Role to use not found"); } else { user.webpages_Roles.Add(role); repo.SaveChanges(); } } } catch (Exception) { throw; } } else { string errors = ModelState.Values.SelectMany(modelState => modelState.Errors).Aggregate(string.Empty, (current, error) => current + (error.ErrorMessage + Environment.NewLine)); throw new Exception(errors); } }
public IQueryable <UsersInRoleGridModel> ListUsersInRole(string role) { var repo = new Durandal2UserMaintContext(); var q1 = (from v in repo.webpages_Roles where v.RoleName == role select v).FirstOrDefault(); if (q1 != null) { return(q1.UserProfiles.Select(userProfile => new UsersInRoleGridModel { UserName = userProfile.UserName }).AsQueryable()); } else { throw new Exception("Role not found"); } }
public IQueryable <RoleGridModel> ListUserRoles(string user) { var repo = new Durandal2UserMaintContext(); var q1 = (from v in repo.UserProfiles where v.UserName == user select v).FirstOrDefault(); if (q1 != null) { return(q1.webpages_Roles.Select(x => new RoleGridModel { RoleName = x.RoleName, RoleId = x.RoleId }).AsQueryable()); } else { throw new Exception("User not found"); } }
public ActionResult Login(LoginModel model, string returnUrl) { if (ModelState.IsValid) { var repo = new Durandal2UserMaintContext(); var user = repo.UserProfiles.FirstOrDefault(x => x.UserName == model.UserName && x.IsActive); if (user != null) { if (WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe)) { return(RedirectToLocal(returnUrl)); } } } // If we got this far, something failed, redisplay form ModelState.AddModelError("", "The user name or password provided is incorrect, or the user is not active."); return(View(model)); }
public void UpdateUserInfo(UserProfile userProfile) { if (ModelState.IsValid) { var repo = new Durandal2UserMaintContext(); var user = (from v in repo.UserProfiles select v).FirstOrDefault(x => x.UserName == userProfile.UserName); if (user != null) { user.UserEmail = userProfile.UserEmail; user.IsActive = userProfile.IsActive; repo.SaveChanges(); } else { throw new Exception("User to update not found"); } } else { string errors = ModelState.Values.SelectMany(modelState => modelState.Errors).Aggregate(string.Empty, (current, error) => current + (error.ErrorMessage + Environment.NewLine)); throw new Exception(errors); } }
public SimpleMembershipInitializer() { Database.SetInitializer <Durandal2UserMaintContext>(null); try { bool createdDb = false; using (var context = new Durandal2UserMaintContext()) { if (!context.Database.Exists()) { // Create the SimpleMembership database without Entity Framework migration schema ((IObjectContextAdapter)context).ObjectContext.CreateDatabase(); createdDb = true; } } try { WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true); } catch (InvalidOperationException e) { //do nothing. Most likely the initialization happened in the global.aspx } catch (Exception) { throw; } if (createdDb) { try { Roles.CreateRole("Administrator"); WebSecurity.CreateUserAndAccount("admin", "pass@word1", new { IsActive = true }); Roles.AddUserToRole("admin", "Administrator"); } catch (Exception ex) { } } else { if (!Roles.RoleExists("Administrator")) { Roles.CreateRole("Administrator"); } if (WebSecurity.UserExists("admin")) { if (!Roles.IsUserInRole("admin", "Administrator")) { try { Roles.AddUserToRole("admin", "Administrator"); } catch (Exception ex) { } } } } } 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); } }