ProfileMigrateEventHandler Delegát
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje metodu, která bude zpracovávat MigrateAnonymousProfileModule událost třídy .
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)
Parametry
- sender
- Object
Událost ProfileModule , která vyvolala MigrateAnonymous událost.
A ProfileMigrateEventArgs , který obsahuje data události.
Příklady
Následující příklady kódu ukazují Web.config soubor, který umožňuje anonymní ověřování, a MigrateAnonymous událost obsaženou v souboru Global.asax pro aplikaci ASP.NET.
Následující příklad kódu ukazuje Web.config soubor, který umožňuje anonymní identifikaci a vlastnosti profilu, které podporují anonymní uživatele.
<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>
Následující příklad kódu ukazuje událost obsaženou MigrateAnonymous v souboru Global.asax pro aplikaci ASP.NET. Událost MigrateAnonymous zkopíruje hodnoty vlastností profilu z anonymního profilu do profilu aktuálního uživatele.
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
Poznámky
Delegát ProfileMigrateEventHandler je definován pro MigrateAnonymous událost ProfileModule třídy . Můžete získat přístup k MigrateAnonymous události ProfileModule třídy v souboru Global.asax pro aplikaci ASP.NET, jak je znázorněno v příkladu pro toto téma.
Událost můžete použít MigrateAnonymous ke zkopírování hodnot vlastností profilu z anonymního profilu do ověřeného profilu, když se přihlásí někdo, kdo anonymním způsobem používá vaši aplikaci.
Při spuštění aplikace s povoleným profilem uživatele vytvoří ASP.NET novou třídu typu ProfileCommon
, která dědí z třídy ProfileBase . Při generování ProfileCommon
třídy na základě vlastností profilu zadaných v souboru Web.config je přidána metoda, GetProfile
která umožňuje načíst ProfileCommon
objekt na základě uživatelského jména. K načtení hodnot vlastností anonymního profilu můžete použít GetProfile
metodu aktuálního profilu. Anonymní hodnoty vlastností se pak dají zkopírovat do aktuálního profilu ověřeného uživatele.
Metody rozšíření
GetMethodInfo(Delegate) |
Získá objekt, který představuje metodu reprezentovanou zadaným delegátem. |
Platí pro
Viz také
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro