Udostępnij za pośrednictwem


RoleProvider.GetAllRoles Metoda

Definicja

Pobiera listę wszystkich ról skonfigurowanego applicationNameelementu .

public:
 abstract cli::array <System::String ^> ^ GetAllRoles();
public abstract string[] GetAllRoles ();
abstract member GetAllRoles : unit -> string[]
Public MustOverride Function GetAllRoles () As String()

Zwraca

String[]

Tablica ciągów zawierająca nazwy wszystkich ról przechowywanych w źródle danych dla skonfigurowanego applicationNameelementu .

Przykłady

Poniższy przykład kodu przedstawia przykładową implementację GetAllRoles metody .

public override string[] GetAllRoles()
{
  string tmpRoleNames = "";

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

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

  OdbcDataReader reader = null;

  try
  {
    conn.Open();

    reader = cmd.ExecuteReader();

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

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

  return new string[0];
}
Public Overrides Function GetAllRoles() As String()
    Dim tmpRoleNames As String = ""

    Dim conn As OdbcConnection = New OdbcConnection(connectionString)
    Dim cmd As OdbcCommand = New OdbcCommand("SELECT Rolename FROM Roles " & _
                                             " WHERE ApplicationName = ?", conn)

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

    Dim reader As OdbcDataReader = Nothing

    Try
        conn.Open()

        reader = cmd.ExecuteReader()

        Do While reader.Read()
            tmpRoleNames &= reader.GetString(0) & ","
        Loop
    Catch e As OdbcException
        ' Handle exception.
    Finally
        If Not reader Is Nothing Then reader.Close()
        conn.Close()
    End Try

    If tmpRoleNames.Length > 0 Then
        ' Remove trailing comma.
        tmpRoleNames = tmpRoleNames.Substring(0, tmpRoleNames.Length - 1)
        Return tmpRoleNames.Split(CChar(","))
    End If

    Return New String() {}
End Function

Uwagi

GetAllRoles metoda jest wywoływana przez GetAllRoles metodę Roles klasy w celu pobrania listy nazw ról ze źródła danych. Pobierane są tylko role dla określonego ApplicationName elementu.

Jeśli dla skonfigurowanej applicationNamekonfiguracji nie ma żadnych ról, zalecamy, aby dostawca zwrócił tablicę ciągów bez elementów.

Dotyczy

Zobacz też