Sdílet prostřednictvím


ProfileModule.Personalize Událost

Definice

Nastane před vytvořením profilu uživatele.

public:
 event System::Web::Profile::ProfileEventHandler ^ Personalize;
public event System.Web.Profile.ProfileEventHandler Personalize;
member this.Personalize : System.Web.Profile.ProfileEventHandler 
Public Custom Event Personalize As ProfileEventHandler 

Event Type

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 roli.

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

Událost Personalize se vyvolá během HttpApplication.AcquireRequestState události. K události ProfileModule třídy v souboru Global.asax pro vaši 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 zadání vlastního profilu uživatele. ProfileEventArgs.Profile Pokud je hodnota vlastnosti zadaná pro ProfileEventHandler obslužnou rutinu události pro Personalize událost nastavena na hodnotu, která není null po Personalize skončení události, ProfileModule pak použije zadanou hodnotu ProfileEventArgs.Profile vlastnosti jako hodnotu Profile vlastnosti aktuální HttpContext.

Platí pro