This documentation is archived and is not being maintained.

RoleProvider.FindUsersInRole Method

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 (in system.web.dll)

public abstract string[] FindUsersInRole (
	string roleName,
	string usernameToMatch
)
public abstract String[] FindUsersInRole (
	String roleName, 
	String usernameToMatch
)
public abstract function FindUsersInRole (
	roleName : String, 
	usernameToMatch : String
) : String[]
Not applicable.

Parameters

roleName

The role to search in.

usernameToMatch

The user name to search for.

Return Value

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;

  try
  { 
    conn.Open();

    reader = cmd.ExecuteReader();

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

    conn.Close();
  }

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

  return null;
}

Windows 98, Windows Server 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0
Show: