次の方法で共有


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) 

イベントの種類

次の例は、Global.asax ファイル内の SelectingProvider イベントにイベント ハンドラーをバインドする方法を示しています。 イベント ハンドラーは、実行時にユーザー名に基づいて、使用するロール プロバイダーを決定します。

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 選択するイベントのイベント ハンドラーを作成できます。

適用対象

こちらもご覧ください