ProfileEventHandler Delegát

Definice

Představuje metodu, která zpracuje Personalize událost ProfileModule .Represents the method that will handle the Personalize event of a 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

ProfileModule, Který vyvolal Personalize událost.The ProfileModule that raised the Personalize event.

e
ProfileEventArgs

Obsahující ProfileEventArgs data události.A ProfileEventArgs that contains the event data.

Příklady

Následující příklad kódu ukazuje Personalize událost deklarovanou v souboru Global. asax pro aplikaci.The following code example shows the Personalize event declared in the Global.asax file for an application. Kód události načte uživatelský profil na základě členství v rolích.The event code loads a user profile for a user based on role membership.

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

ProfileEventHandlerDelegát je definován pro Personalize událost ProfileModule třídy.The ProfileEventHandler delegate is defined for the Personalize event of the ProfileModule class. K Personalize události ProfileModule třídy v souboru Global. asax pro aplikaci ASP.NET můžete přistupovat pomocí Profile_Personalize globální události, jak je znázorněno v příkladu pro toto téma.You can access the Personalize event of the ProfileModule class in the Global.asax file for your ASP.NET application using the Profile_Personalize global event, as shown in the example for this topic.

PersonalizeK určení vlastního profilu uživatele můžete použít událost.You can use the Personalize event to specify a custom user profile. Pokud Profile ProfileEventArgs je vlastnost parametru zadaná pro Personalize událost ProfileEventHandler nastavena na hodnotu, která není null po Personalize dokončení události, ProfileModule bude tato hodnota použita pro Profile vlastnost aktuálního prvku HttpContext .If the Profile property of the ProfileEventArgs parameter specified for the Personalize event's ProfileEventHandler is set to a non-null value when the Personalize event completes, then the ProfileModule will use that value for the Profile property of the current HttpContext.

Metody rozšíření

GetMethodInfo(Delegate)

Získává objekt, který představuje metodu reprezentovanou zadaným delegátem.Gets an object that represents the method represented by the specified delegate.

Platí pro

Viz také