Udostępnij za pośrednictwem


Roles.Providers Właściwość

Definicja

Pobiera kolekcję dostawców ról dla aplikacji ASP.NET.

public:
 static property System::Web::Security::RoleProviderCollection ^ Providers { System::Web::Security::RoleProviderCollection ^ get(); };
public static System.Web.Security.RoleProviderCollection Providers { get; }
member this.Providers : System.Web.Security.RoleProviderCollection
Public Shared ReadOnly Property Providers As RoleProviderCollection

Wartość właściwości

RoleProviderCollection

Element RoleProviderCollection zawierający dostawców ról skonfigurowanych dla aplikacji ASP.NET.

Wyjątki

Zarządzanie rolami nie jest włączone.

Przykłady

Poniższy przykład kodu zawiera listę dostawców włączonych dla aplikacji i ich typów.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<%@ Import Namespace="System.Configuration.Provider" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>List Enabled Providers</title>
</head>
<body>

<%
foreach (RoleProvider p in Roles.Providers)
  Response.Write(p.Name + ", " + p.GetType() + "<br />");
%>

</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security" %>
<%@ Import Namespace="System.Configuration.Provider" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>List Enabled Providers</title>
</head>
<body>

<%
For Each p As RoleProvider In Roles.Providers
  Response.Write(p.Name & ", " & p.GetType().ToString() & "<br />")
Next
%>

</body>
</html>

Uwagi

Właściwość Providers odwołuje się do wszystkich dostawców ról włączonych dla aplikacji, w tym wszystkich dostawców dodanych w pliku Web.config. Możesz kontrolować, którzy dostawcy ról są dostępni dla aplikacji, używając providers elementu sekcji roleManager w pliku Web.config dla aplikacji.

W poniższym przykładzie przedstawiono sekcję roleManager , która usuwa wszystkich istniejących dostawców (takich jak określone w pliku Machine.config) i dodaje SqlRoleProvider wystąpienie jako dostawca roli dla aplikacji.

<configuration>
  <connectionStrings>
    <add name="SqlServices" connectionString="Data Source=MySqlServer;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />
  </connectionStrings>

  <system.web>
    <roleManager defaultProvider="SqlProvider"
      enabled="true"
      cacheRolesInCookie="true"
      cookieName=".ASPROLES"
      cookieTimeout="30"
      cookiePath="/"
      cookieRequireSSL="false"
      cookieSlidingExpiration="true"
      cookieProtection="Encrypted">

      <providers>
        <clear/>
        <add
          name="SqlProvider"
          type="System.Web.Security.SqlRoleProvider"
          connectionStringName="SqlServices"
          applicationName="MyApplication" />
         </providers>

    </roleManager>
  </system.web>
</configuration>

Możesz uzyskać silnie typizowane odwołanie do dostawcy z Providers kolekcji, indeksując dostawcę roli według nazwy i odrzucając go jako żądany typ.

Możesz uzyskać odwołanie do domyślnego dostawcy aplikacji przy użyciu Provider właściwości .

Dotyczy

Zobacz też