Compartilhar via


ProfileEventHandler Delegar

Definição

Representa o método que manipulará o evento de Personalize de 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)

Parâmetros

sender
Object

O ProfileModule que gerou o evento Personalize.

e
ProfileEventArgs

Um ProfileEventArgs que contém os dados do evento.

Exemplos

O exemplo de código a seguir mostra o Personalize evento declarado no arquivo Global.asax para um aplicativo. O código do evento carrega um perfil de usuário para um usuário com base na associação de função.

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

Comentários

O ProfileEventHandler delegado é definido para o Personalize evento da ProfileModule classe . Você pode acessar o Personalize evento da ProfileModule classe no arquivo Global.asax para seu aplicativo ASP.NET usando o Profile_Personalize evento global, conforme mostrado no exemplo deste tópico.

Você pode usar o Personalize evento para especificar um perfil de usuário personalizado. Se a Profile propriedade do ProfileEventArgs parâmetro especificado para o Personalize do ProfileEventHandler evento for definida como um valor não nulo quando o Personalize evento for concluído, o ProfileModule usará esse valor para a Profile propriedade do atual HttpContext.

Métodos de Extensão

GetMethodInfo(Delegate)

Obtém um objeto que representa o método representado pelo delegado especificado.

Aplica-se a

Confira também