Teilen über


ProfileEventHandler Delegat

Definition

Stellt die Methode zur Behandlung des Personalize-Ereignisses eines ProfileModule-Objekts dar.

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)

Parameter

sender
Object

Das ProfileModule, das das Personalize-Ereignis ausgelöst hat.

e
ProfileEventArgs

Ein ProfileEventArgs, das die Ereignisdaten enthält.

Beispiele

Das folgende Codebeispiel zeigt das Personalize in der Datei Global.asax für eine Anwendung deklarierte Ereignis. Der Ereigniscode lädt ein Benutzerprofil für einen Benutzer basierend auf der Rollenmitgliedschaft.

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

Hinweise

Der ProfileEventHandler Delegat ist für das Personalize Ereignis der ProfileModule -Klasse definiert. Sie können auf das Personalize Ereignis der ProfileModule -Klasse in der Datei Global.asax für Ihre ASP.NET Anwendung zugreifen, indem Sie das Profile_Personalize globale Ereignis verwenden, wie im Beispiel für dieses Thema gezeigt.

Sie können das Personalize Ereignis verwenden, um ein benutzerdefiniertes Benutzerprofil anzugeben. Wenn die Profile Eigenschaft des für das ProfileEventArgsPersonalize -Ereignis ProfileEventHandler angegebenen Parameters nach Abschluss des Personalize Ereignisses auf einen Wert ungleich NULL festgelegt ist, wird dieser ProfileModule Wert für die Profile -Eigenschaft des aktuellen HttpContextverwendet.

Erweiterungsmethoden

GetMethodInfo(Delegate)

Ruft ein Objekt ab, das die Methode darstellt, die vom angegebenen Delegaten dargestellt wird.

Gilt für:

Weitere Informationen