ProfileMigrateEventHandler Delegát

Definice

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.

e
ProfileMigrateEventArgs

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é