RoleProvider.RoleExists Method (String)

 

Gets a value indicating whether the specified role name already exists in the role data source for the configured applicationName.

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

public abstract bool RoleExists(
	string roleName
)

Parameters

roleName
Type: System.String

The name of the role to search for in the data source.

Return Value

Type: System.Boolean

true if the role name already exists in the data source for the configured applicationName; otherwise, false.

RoleExists is called by the RoleExists method of the Roles class to determine whether a role name exists in the data source for the configured ApplicationName.

If the specified role name is null or is an empty string, we recommend that your provider throw an exception.

The following code example shows a sample implementation of the RoleExists method.

public override bool RoleExists(string rolename)
{
  if (rolename == null || rolename == "")
    throw new ProviderException("Role name cannot be empty or null.");

  bool exists = false;

  OdbcConnection conn = new OdbcConnection(connectionString);
  OdbcCommand cmd = new OdbcCommand("SELECT COUNT(*) FROM Roles "  +
                                    " WHERE Rolename = ? AND ApplicationName = ?", conn);

  cmd.Parameters.Add("@Rolename", OdbcType.VarChar, 255).Value = rolename;
  cmd.Parameters.Add("@ApplicationName", OdbcType.VarChar, 255).Value = ApplicationName;

  try
  {
    conn.Open();

    int numRecs = (int)cmd.ExecuteScalar();

    if (numRecs > 0)
    {
      exists = true;
    }
  }
  catch (OdbcException)
  {
    // Handle exception.
  }
  finally
  {
    conn.Close();      
  }

  return exists;
}

.NET Framework
Available since 2.0
Return to top
Show: