Ejemplo n.º 1
0
 // 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());
     }
 }
Ejemplo n.º 2
0
 /// <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);
     }
 }