// Inherited from RoleProvider ==> Forwarded to previous provider if this provider hasn't been initialized public override string[] GetUsersInRole(string roleName) { if (!InitializeCalled) { return(PreviousProvider.GetUsersInRole(roleName)); } using (var db = ConnectToDatabase()) { string query = @"SELECT u." + SafeUserNameColumn + " FROM " + SafeUserTableName + " u, " + UsersInRoleTableName + " ur, " + RoleTableName + " r Where (r.RoleName = @0 and ur.RoleId = r.RoleId and ur.UserId = u." + SafeUserIdColumn + ")"; return(db.Query(query, new object[] { roleName }) .Select <dynamic, string>(d => (string)d[0]) .ToArray()); } }
/// <summary> /// Gets a list of users in the specified role for the configured applicationName. /// </summary> /// <remarks>Inherited from RoleProvider ==> Forwarded to previous provider if this provider hasn't been initialized</remarks> /// <param name="roleName">The name of the role to get the list of users for.</param> /// <returns>A string array containing the names of all the users who are members of the specified role for the configured applicationName.</returns> public override string[] GetUsersInRole(string roleName) { if (!InitializeCalled) { return(PreviousProvider.GetUsersInRole(roleName)); } using (var db = NewMySqlSecurityDbContext) { var userNames = db.UsersInRoles.Where(x => x.Role.RoleName == roleName) .Select(x => x.UserProfile.UserName) .ToArray(); return(userNames); } }