Condividi tramite


ProfileModule.Personalize Evento

Definizione

Viene generato prima della creazione di un profilo utente.

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 

Tipo evento

Esempio

Nell'esempio di codice seguente viene illustrato l'evento Personalize dichiarato nel file Global.asax per un'applicazione. Il codice evento carica un profilo utente per un utente in base all'appartenenza al ruolo.

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

Commenti

L'evento Personalize viene generato durante l'evento HttpApplication.AcquireRequestState . È possibile accedere all'evento Personalize della ProfileModule classe nel file Global.asax per l'applicazione ASP.NET usando l'evento Profile_Personalize globale, come illustrato nell'esempio per questo argomento.

È possibile usare l'evento Personalize per specificare un profilo utente personalizzato. Se il ProfileEventArgs.Profile valore della proprietà specificato per il ProfileEventHandler gestore eventi per l'evento Personalize è impostato su un valore che non null è al termine dell'evento Personalize , ProfileModule userà il valore specificato della ProfileEventArgs.Profile proprietà come valore della Profile proprietà dell'oggetto corrente HttpContext.

Si applica a