次の方法で共有


SelectingProviderEventArgs.User プロパティ

定義

認証されたユーザーを取得します。

public:
 property System::Security::Principal::IPrincipal ^ User { System::Security::Principal::IPrincipal ^ get(); };
public System.Security.Principal.IPrincipal User { get; }
member this.User : System.Security.Principal.IPrincipal
Public ReadOnly Property User As IPrincipal

プロパティ値

認証されたユーザーを含むオブジェクト。

次の例は、 SelectingProvider イベントのイベント ハンドラーを示しています。 イベント ハンドラーは、 SelectingProviderEventArgs オブジェクトを使用してユーザー名を確認し、使用するロール プロバイダーを設定します。 イベント ハンドラーは、Global.asax ファイルの Application_Start メソッドの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

注釈

User プロパティを使用して、SelectingProvider イベント中にユーザーに関する情報を取得します。

適用対象

こちらもご覧ください