Comparteix a través de


ProfileMigrateEventHandler Delegado

Definición

Representa el método que controlará el evento MigrateAnonymous de la clase ProfileModule.

public delegate void ProfileMigrateEventHandler(System::Object ^ sender, ProfileMigrateEventArgs ^ e);
public delegate void ProfileMigrateEventHandler(object sender, ProfileMigrateEventArgs e);
type ProfileMigrateEventHandler = delegate of obj * ProfileMigrateEventArgs -> unit
Public Delegate Sub ProfileMigrateEventHandler(sender As Object, e As ProfileMigrateEventArgs)

Parámetros

sender
Object

La clase ProfileModule que provocó el evento MigrateAnonymous.

e
ProfileMigrateEventArgs

Objeto ProfileMigrateEventArgs que contiene los datos del evento.

Ejemplos

En los ejemplos de código siguientes se muestra un archivo Web.config que habilita la autenticación anónima y el MigrateAnonymous evento incluido en el archivo Global.asax para una aplicación de ASP.NET.

En el ejemplo de código siguiente se muestra un archivo Web.config que permite la identificación anónima y las propiedades de perfil que admiten usuarios anónimos.

<configuration>  
  <system.web>  
    <authentication mode="Forms" >  
      <forms loginUrl="login.aspx" name=".ASPXFORMSAUTH" />  
    </authentication>  

    <anonymousIdentification enabled="true" />  

    <profile enabled="true" defaultProvider="AspNetSqlProvider">  
      <properties>  
        <add name="ZipCode" allowAnonymous="true" />  
        <add name="CityAndState" allowAnonymous="true" />  
        <add name="StockSymbols" type="System.Collections.ArrayList" allowAnonymous="true" />  
      </properties>  
    </profile>  
   </system.web>  
</configuration>  

En el ejemplo de código siguiente se muestra el MigrateAnonymous evento incluido en el archivo Global.asax para una aplicación de ASP.NET. El MigrateAnonymous evento copia los valores de propiedad de perfil del perfil anónimo en el perfil del usuario actual.

public void Profile_OnMigrateAnonymous(object sender, ProfileMigrateEventArgs args)
{
  ProfileCommon anonymousProfile = Profile.GetProfile(args.AnonymousID);

  Profile.ZipCode = anonymousProfile.ZipCode;
  Profile.CityAndState = anonymousProfile.CityAndState;
  Profile.StockSymbols = anonymousProfile.StockSymbols;

  ////////
  // Delete the anonymous profile. If the anonymous ID is not 
  // needed in the rest of the site, remove the anonymous cookie.

  ProfileManager.DeleteProfile(args.AnonymousID);
  AnonymousIdentificationModule.ClearAnonymousIdentifier(); 

  // Delete the user row that was created for the anonymous user.
  Membership.DeleteUser(args.AnonymousID, true);

}
Public Sub Profile_OnMigrateAnonymous(sender As Object, args As ProfileMigrateEventArgs)
  Dim anonymousProfile As ProfileCommon = Profile.GetProfile(args.AnonymousID)

  Profile.ZipCode = anonymousProfile.ZipCode
  Profile.CityAndState = anonymousProfile.CityAndState
  Profile.StockSymbols = anonymousProfile.StockSymbols

  ''''''''
  ' Delete the anonymous profile. If the anonymous ID is not 
  ' needed in the rest of the site, remove the anonymous cookie.

  ProfileManager.DeleteProfile(args.AnonymousID)
  AnonymousIdentificationModule.ClearAnonymousIdentifier()

  ' Delete the user row that was created for the anonymous user.
  Membership.DeleteUser(args.AnonymousID, True)
End Sub

Comentarios

El ProfileMigrateEventHandler delegado se define para el MigrateAnonymous evento de la ProfileModule clase . Puede tener acceso al MigrateAnonymous evento de la ProfileModule clase en el archivo Global.asax de la aplicación ASP.NET, como se muestra en el ejemplo de este tema.

Puede usar el MigrateAnonymous evento para copiar los valores de propiedad de perfil de un perfil anónimo en un perfil autenticado cuando alguien que ha usado de forma anónima los registros de la aplicación.

Cuando se inicia una aplicación que tiene habilitado el perfil de usuario, ASP.NET crea una nueva clase de tipo ProfileCommon, que hereda de la ProfileBase clase . Cuando se genera la ProfileCommon clase , en función de las propiedades de perfil especificadas en el archivo Web.config, se agrega un GetProfile método que permite recuperar un ProfileCommon objeto basado en un nombre de usuario. Puede usar el GetProfile método del perfil actual para recuperar los valores de propiedad del perfil anónimo. Los valores de propiedad anónima se pueden copiar en el perfil actual para el usuario autenticado.

Métodos de extensión

GetMethodInfo(Delegate)

Obtiene un objeto que representa el método representado por el delegado especificado.

Se aplica a

Consulte también