ProfileMigrateEventHandler Delegát

Definice

Představuje metodu, která bude zpracovávat MigrateAnonymous událost ProfileModule 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 vyvolala MigrateAnonymous .

e
ProfileMigrateEventArgs

A ProfileMigrateEventArgs obsahující data události.

Příklady

Následující příklady kódu ukazují soubor Web.config, který umožňuje anonymní ověřování a MigrateAnonymous událost obsaženou v souboru Global.asax pro ASP.NET aplikaci.

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 MigrateAnonymous událost obsaženou v souboru Global.asax pro ASP.NET aplikaci. 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. K události MigrateAnonymous třídy ProfileModule v souboru Global.asax pro vaši aplikaci ASP.NET můžete získat přístup, 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 někdo, kdo byl anonymní pomocí přihlášení vaší aplikace.

Když je spuštěna aplikace s povoleným profilem uživatele, ASP.NET vytvoří novou třídu typu ProfileCommon, která dědí z ProfileBase třídy. ProfileCommon Při vygenerování třídy na základě vlastností profilu zadaných v souboru Web.config se přidá metoda, GetProfile která umožňuje načíst ProfileCommon objekt na základě uživatelského jména. Pomocí metody aktuálního profilu můžete GetProfile načíst hodnoty vlastností anonymního profilu. Anonymní hodnoty vlastností je pak možné zkopírovat do aktuálního profilu ověřeného uživatele.

Metody rozšíření

Name Description
GetMethodInfo(Delegate)

Získá objekt, který představuje metodu reprezentovanou zadaným delegátem.

Platí pro

Viz také