次の方法で共有


ProfileEventHandler 代理人

定義

PersonalizeProfileModule イベントを処理するメソッドを表します。

public delegate void ProfileEventHandler(System::Object ^ sender, ProfileEventArgs ^ e);
public delegate void ProfileEventHandler(object sender, ProfileEventArgs e);
type ProfileEventHandler = delegate of obj * ProfileEventArgs -> unit
Public Delegate Sub ProfileEventHandler(sender As Object, e As ProfileEventArgs)

パラメーター

sender
Object

ProfileModule イベントの発生元の Personalize

e
ProfileEventArgs

イベント データを格納している ProfileEventArgs

次のコード例は、アプリケーションの Personalize Global.asax ファイルで宣言されたイベントを示しています。 イベント コードは、ロール メンバーシップに基づいてユーザーのユーザー プロファイルを読み込みます。

public void Profile_Personalize(object sender, ProfileEventArgs args)
{
  ProfileCommon userProfile;

  if (User == null) { return; }

  userProfile = (ProfileCommon)ProfileBase.Create(User.Identity.Name);

  if (User.IsInRole("Administrators"))
    userProfile = userProfile.GetProfile("Administrator");
  else
    if (User.IsInRole("Users"))
      userProfile = userProfile.GetProfile("User");
    else
      userProfile = userProfile.GetProfile("Guest");

  if (userProfile != null)
    args.Profile = userProfile;
}
Public Sub Profile_Personalize(sender As Object, args As ProfileEventArgs)
  Dim userProfile As ProfileCommon

  If User Is Nothing Then Return

  userProfile = CType(ProfileBase.Create(User.Identity.Name), ProfileCommon)

  If User.IsInRole("Administrators") Then
    userProfile = userProfile.GetProfile("Administrator")
  Else
    If User.IsInRole("Users") Then
      userProfile = userProfile.GetProfile("User")
    Else
      userProfile = userProfile.GetProfile("Guest")
    End If
  End If

  If Not userProfile Is Nothing Then _
    args.Profile = userProfile
End Sub

注釈

デリゲートは ProfileEventHandler 、 クラスの イベントに対して Personalize 定義されます ProfileModule 。 このトピックの例に示すように、グローバル イベントをProfileModule使用してProfile_Personalize、ASP.NET アプリケーションの Global.asax ファイル内の クラスのイベントにアクセスPersonalizeできます。

イベントを Personalize 使用して、カスタム ユーザー プロファイルを指定できます。 イベントの Profile に指定されたPersonalizeパラメーターの ProfileEventArgs プロパティが、イベントProfileEventHandlerの完了時Personalizeに null 以外の値に設定されている場合、 ProfileModule は現在HttpContextの の プロパティにその値Profileを使用します。

拡張メソッド

GetMethodInfo(Delegate)

指定したデリゲートによって表されるメソッドを表すオブジェクトを取得します。

適用対象

こちらもご覧ください