語言

RoleService.SelectingProvider 活動

定義

當實 RoleService 例決定使用哪個角色提供者來檢查使用者的角色時,會發生這種情況。

public:
 static event EventHandler<System::Web::ApplicationServices::SelectingProviderEventArgs ^> ^ SelectingProvider;
public static event EventHandler<System.Web.ApplicationServices.SelectingProviderEventArgs> SelectingProvider;
member this.SelectingProvider : EventHandler<System.Web.ApplicationServices.SelectingProviderEventArgs> 
Public Shared Custom Event SelectingProvider As EventHandler(Of SelectingProviderEventArgs) 

事件類型

範例

以下範例說明如何將事件處理程序綁定到 SelectingProvider Global.asax 檔案中的事件。 事件處理器會在執行時根據使用者名稱決定使用哪個角色提供者。

void Application_Start(object sender, EventArgs e) 
{
    System.Web.ApplicationServices.RoleService.SelectingProvider += 
        new EventHandler<System.Web.ApplicationServices.SelectingProviderEventArgs>(RoleService_SelectingProvider);
}

void RoleService_SelectingProvider
    (object sender, System.Web.ApplicationServices.SelectingProviderEventArgs e)
{
    if (e.User.Identity.Name.IndexOf("@example.com") > 0)
    {
        e.ProviderName = "EmployeeRoleProvider";
    }
    else
    {
        e.ProviderName = "CustomerRoleProvider";
    }
}
Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
    AddHandler System.Web.ApplicationServices.RoleService.SelectingProvider, _
        AddressOf Me.RoleService_SelectingProvider
End Sub

Sub RoleService_SelectingProvider _
(ByVal sender As Object, _
 ByVal e As System.Web.ApplicationServices.SelectingProviderEventArgs)

    If (e.User.Identity.Name.IndexOf("@example.com") > 0) Then
        e.ProviderName = "EmployeeRoleProvider"
    Else
        e.ProviderName = "CustomerRoleProvider"
    End If
End Sub

備註

RoleService當類別決定使用哪個角色提供者以取得使用者的角色時,會觸發事件SelectingProvider。 你可以為事件建立事件處理 SelectingProvider 程序,在執行時選擇使用哪個角色提供者。

適用於

另請參閱