Sdílet prostřednictvím


ProfileEventHandler Delegát

Definice

Představuje metodu, která bude zpracovávat Personalize událost objektu ProfileModule.

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)

Parametry

sender
Object

Událost ProfileModule , která vyvolala Personalize událost.

e
ProfileEventArgs

A ProfileEventArgs , který obsahuje data události.

Příklady

Následující příklad kódu ukazuje Personalize událost deklarovanou v souboru Global.asax pro aplikaci. Kód události načte profil uživatele pro uživatele na základě členství v rolích.

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

Poznámky

Delegát ProfileEventHandler je definován pro Personalize událost ProfileModule třídy. K události ProfileModule třídy v souboru Global.asax pro aplikaci ASP.NET můžete přistupovat Personalize pomocí Profile_Personalize globální události, jak je znázorněno v příkladu pro toto téma.

Událost můžete použít Personalize k určení vlastního profilu uživatele. Profile Pokud je vlastnost parametru zadaného ProfileEventArgs pro Personalize událost ProfileEventHandler nastavena na hodnotu, která není null po Personalize dokončení události, pak ProfileModule použije tuto hodnotu pro Profile vlastnost aktuální HttpContext.

Metody rozšíření

GetMethodInfo(Delegate)

Získá objekt, který představuje metodu reprezentovanou zadaným delegátem.

Platí pro

Viz také