Redigera

Dela via


RoleProvider.RoleExists(String) Method

Definition

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

public:
 abstract bool RoleExists(System::String ^ roleName);
public abstract bool RoleExists (string roleName);
abstract member RoleExists : string -> bool
Public MustOverride Function RoleExists (roleName As String) As Boolean

Parameters

roleName
String

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

Returns

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

Examples

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;
}
Public Overrides Function RoleExists(ByVal rolename As String) As Boolean

    If rolename Is Nothing OrElse rolename = "" Then _
      Throw New ProviderException("Role name cannot be empty or null.")

    Dim exists As Boolean = False

    Dim conn As OdbcConnection = New OdbcConnection(connectionString)
    Dim cmd As OdbcCommand = 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()

        Dim numRecs As Integer = CType(cmd.ExecuteScalar(), Integer)

        If numRecs > 0 Then
            exists = True
        End If
    Catch e As OdbcException
        ' Handle exception.
    Finally
        conn.Close()
    End Try

    Return exists
End Function

Remarks

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.

Applies to

See also