ProfileMigrateEventArgs.AnonymousID Proprietà

Definizione

Ottiene l'identificatore anonimo per il profilo anonimo da cui eseguire la migrazione dei valori delle proprietà del profilo.

public:
 property System::String ^ AnonymousID { System::String ^ get(); };
public string AnonymousID { get; }
member this.AnonymousID : string
Public ReadOnly Property AnonymousID As String

Valore della proprietà

Identificatore anonimo per il profilo anonimo da cui eseguire la migrazione dei valori delle proprietà del profilo.

Esempio

Gli esempi di codice seguenti mostrano un file Web.config che abilita l'autenticazione anonima e l'evento MigrateAnonymous incluso nel file Global.asax per un'applicazione ASP.NET

Nell'esempio di codice seguente viene illustrato un file Web.config che consente le proprietà di identificazione e profilo anonime che supportano gli utenti anonimi.

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

Nell'esempio di codice seguente viene illustrato l'evento MigrateAnonymous incluso nel file Global.asax per un'applicazione ASP.NET. L'evento MigrateAnonymous copia i valori delle proprietà del profilo dal profilo anonimo al profilo per l'utente corrente.

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

Commenti

La AnonymousID proprietà contiene l'identificatore univoco per un utente anonimo. Quando un utente che usa l'applicazione accede in modo anonimo, è possibile gestire l'evento MigrateAnonymous per copiare i valori delle proprietà del profilo dal profilo anonimo dell'utente al profilo autenticato.

Quando viene avviata un'applicazione con il profilo utente abilitato, ASP.NET crea una nuova classe di tipo ProfileCommon, che eredita dalla ProfileBase classe e include le proprietà del profilo specificate nel file di Web.config. Quando viene generata la ProfileCommon classe, viene aggiunto un GetProfile metodo che consente di recuperare un ProfileCommon oggetto in base a un nome utente. È possibile usare il GetProfile metodo del profilo corrente per recuperare i valori delle proprietà del profilo anonimo. I valori delle proprietà anonime possono quindi essere copiati nel profilo corrente per l'utente autenticato. Per un esempio di copia di valori di proprietà anonimi, vedere il secondo esempio di codice.

Si applica a

Vedi anche