次の方法で共有


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 使用します。

適用対象

こちらもご覧ください