Udostępnij za pośrednictwem


ProfileEventHandler Delegat

Definicja

Reprezentuje metodę, która będzie obsługiwać Personalize zdarzenie klasy 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

Zdarzenie ProfileModule zostało podniesione Personalize .

e
ProfileEventArgs

Element ProfileEventArgs zawierający dane zdarzenia.

Przykłady

Poniższy przykład kodu przedstawia Personalize zdarzenie zadeklarowane w pliku Global.asax dla aplikacji. Kod zdarzenia ładuje profil użytkownika dla użytkownika na podstawie członkostwa w rolach.

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

Uwagi

Delegat ProfileEventHandler jest zdefiniowany dla Personalize zdarzenia ProfileModule klasy. Możesz uzyskać dostęp do Personalize zdarzenia ProfileModule klasy w pliku Global.asax dla aplikacji ASP.NET przy użyciu zdarzenia globalnego Profile_Personalize , jak pokazano w przykładzie tego tematu.

Możesz użyć Personalize zdarzenia, aby określić niestandardowy profil użytkownika. Profile Jeśli właściwość parametru ProfileEventArgs określonego dla Personalize zdarzenia ProfileEventHandler jest ustawiona na wartość inną niż null po Personalize zakończeniu zdarzenia, ProfileModule zostanie użyta ta wartość dla Profile właściwości bieżącego HttpContext.

Metody rozszerzania

GetMethodInfo(Delegate)

Pobiera obiekt reprezentujący metodę reprezentowaną przez określonego delegata.

Dotyczy

Zobacz też