Freigeben über


ProfileEventHandler Delegat

Definition

Stellt die Methode dar, die das Personalize Ereignis eines .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)

Parameter

sender
Object

Das ProfileModule Ereignis wurde ausgelöst Personalize .

e
ProfileEventArgs

Ein ProfileEventArgs Objekt, das die Ereignisdaten enthält.

Beispiele

Das folgende Codebeispiel zeigt das Ereignis, das Personalize in der Datei "Global.asax" für eine Anwendung deklariert ist. 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 Delegat ProfileEventHandler wird 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, wie Profile_Personalize im Beispiel für dieses Thema gezeigt.

Sie können das Personalize Ereignis verwenden, um ein benutzerdefiniertes Benutzerprofil anzugeben. Wenn die Profile Eigenschaft des ProfileEventArgs für das Personalize Ereignis ProfileEventHandler angegebenen Parameters auf einen Wert ungleich NULL festgelegt ist, wenn das Personalize Ereignis abgeschlossen ist, verwendet der ProfileModule Wert für die Profile Eigenschaft der aktuellen HttpContext.

Erweiterungsmethoden

Name Beschreibung
GetMethodInfo(Delegate)

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

Gilt für:

Weitere Informationen