ProfileModule.MigrateAnonymous Événement
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Se produit lorsque l'utilisateur anonyme pour un profil se connecte.
public:
event System::Web::Profile::ProfileMigrateEventHandler ^ MigrateAnonymous;
public event System.Web.Profile.ProfileMigrateEventHandler MigrateAnonymous;
member this.MigrateAnonymous : System.Web.Profile.ProfileMigrateEventHandler
Public Custom Event MigrateAnonymous As ProfileMigrateEventHandler
Type d'événement
Exemples
L’exemple suivant montre un fichier Web.config qui active l’identification anonyme et les propriétés de profil qui prennent en charge les utilisateurs anonymes.
<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>
L’exemple de code suivant montre l’événement MigrateAnonymous inclus dans le fichier Global.asax pour une application ASP.NET. L’événement MigrateAnonymous copie les valeurs de propriété de profil du profil anonyme vers le profil de l’utilisateur actuel.
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
Remarques
Vous pouvez accéder à l’événement MigrateAnonymous de la ProfileModule classe dans le fichier Global.asax pour votre application ASP.NET à l’aide de l’événement Profile_MigrateAnonymous
global, comme illustré dans l’exemple de cette rubrique.
Vous pouvez utiliser l’événement pour copier les MigrateAnonymous valeurs des propriétés de profil d’un profil anonyme vers un profil authentifié lorsqu’un utilisateur qui a utilisé votre application de manière anonyme se connecte.
Lorsqu’une application pour laquelle le profil utilisateur est activé est démarrée, ASP.NET crée une nouvelle classe de type ProfileCommon
, qui hérite de la ProfileBase classe . Des accesseurs fortement typés sont ajoutés à la ProfileCommon
classe pour chaque propriété définie dans la section configuration du <profil> . Une GetProfile
méthode vous permet de récupérer un ProfileCommon
objet basé sur un nom d’utilisateur. Vous pouvez utiliser la GetProfile
méthode du profil authentifié actuel pour récupérer les valeurs de propriété du profil anonyme. Les valeurs de propriété anonyme peuvent ensuite être copiées dans le profil actuel de l’utilisateur authentifié.