RoleProvider.FindUsersInRole Method (String, String)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets an array of user names in a role where the user name contains the specified user name to match.

Namespace:   System.Web.Security
Assembly:  System.Web.ApplicationServices (in System.Web.ApplicationServices.dll)

public abstract string[] FindUsersInRole(
	string roleName,
	string usernameToMatch


Type: System.String

The role to search in.

Type: System.String

The user name to search for.

Return Value

Type: System.String[]

A string array containing the names of all the users where the user name matches usernameToMatch and the user is a member of the specified role.

The FindUsersInRole method is called by the Roles class and returns a list of users in a role where the user name contains a match of the supplied usernameToMatch for the configured applicationName. Wildcard support is included based on the data source. Users are returned in alphabetical order by user name.

We recommend that you throw a ProviderException if roleName does not exist in the data source.

The following code example shows a sample FindUsersInRole implementation.

public override string[] FindUsersInRole(string rolename, string usernameToMatch)
  OdbcConnection conn = new OdbcConnection(connectionString);
  OdbcCommand cmd = new OdbcCommand("SELECT Username FROM UsersInRoles  " +
                                    " WHERE Username LIKE ? AND RoleName = ? AND ApplicationName = ?", conn);
  cmd.Parameters.Add("@UsernameSearch", OdbcType.VarChar, 255).Value = usernameToMatch;
  cmd.Parameters.Add("@RoleName", OdbcType.VarChar, 255).Value = rolename;
  cmd.Parameters.Add("@ApplicationName", OdbcType.VarChar, 255).Value = pApplicationName;

  string tmpUserNames = "";
  OdbcDataReader reader = null;


    reader = cmd.ExecuteReader();

    while (reader.Read())
      tmpUserNames += reader.GetString(0) + ",";
  catch (OdbcException)
    // Handle Exception.
    if (reader != null) { reader.Close(); }


  if (tmpUserNames.Length > 0)
    // Remove trailing comma.
    tmpUserNames = tmpUserNames.Substring(0, tmpUserNames.Length - 1);
    return tmpUserNames.Split(',');

  return null;

.NET Framework
Available since 2.0
Return to top