ProfileMigrateEventArgs.AnonymousID Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém o identificador anónimo do perfil anónimo a partir do qual migrar os valores das propriedades do perfil.
public:
property System::String ^ AnonymousID { System::String ^ get(); };
public string AnonymousID { get; }
member this.AnonymousID : string
Public ReadOnly Property AnonymousID As String
Valor de Propriedade
O identificador anónimo do perfil anónimo a partir do qual migrar os valores das propriedades.
Exemplos
Os exemplos de código seguintes mostram um ficheiro Web.config que permite autenticação anónima e o evento MigrateAnonymous incluído no ficheiro Global.asax para uma aplicação ASP.NET
O exemplo de código seguinte mostra um ficheiro Web.config que permite a identificação anónima e propriedades de perfil que suportam utilizadores 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>
O exemplo de código seguinte mostra o evento MigrateAnonymous incluído no ficheiro Global.asax para uma aplicação ASP.NET. O MigrateAnonymous evento copia os valores das propriedades do perfil anónimo para o perfil do utilizador atual.
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
Observações
A AnonymousID propriedade contém o identificador único de um utilizador anónimo. Quando alguém que tem usado a sua aplicação faz login anonimamente, pode gerir o MigrateAnonymous evento para copiar os valores das propriedades do perfil anónimo do utilizador para o seu perfil autenticado.
Quando uma aplicação com o perfil de utilizador ativado é iniciada, ASP.NET cria uma nova classe de tipo ProfileCommon, que herda da classe ProfileBase e inclui propriedades do perfil especificadas no ficheiro Web.config. Quando a ProfileCommon classe é gerada, é adicionado um GetProfile método que permite recuperar um ProfileCommon objeto com base num nome de utilizador. Pode usar o GetProfile método do perfil atual para recuperar os valores das propriedades do perfil anónimo. Os valores anónimos das propriedades podem então ser copiados para o perfil atual do utilizador autenticado. Veja o segundo exemplo de código para um exemplo de cópia de valores anónimos de propriedades.