Condividi tramite


ProfileProviderAttribute Classe

Definizione

Identifica il provider di profili per una proprietà di un profilo utente.

public ref class ProfileProviderAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Property)]
public sealed class ProfileProviderAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Property)>]
type ProfileProviderAttribute = class
    inherit Attribute
Public NotInheritable Class ProfileProviderAttribute
Inherits Attribute
Ereditarietà
ProfileProviderAttribute
Attributi

Esempio

Nell'esempio ProfileBase di codice seguente viene definita una classe che eredita dalla classe per creare un profilo personalizzato. Il tipo del profilo personalizzato viene specificato nell'attributo inherits dell'elemento di configurazione del profilo nel file di Web.config per un'applicazione.

using System;
using System.Web.Profile;

namespace Samples.AspNet.Profile
{
  public class EmployeeProfile : ProfileBase
  {
    [SettingsAllowAnonymous(false)]
    [ProfileProvider("EmployeeInfoProvider")]
    public string Department
    {
      get { return base["EmployeeDepartment"].ToString(); }
      set { base["EmployeeDepartment"] = value; }
    }

    [SettingsAllowAnonymous(false)]
    [ProfileProvider("EmployeeInfoProvider")]
    public EmployeeInfo Details
    {
      get { return (EmployeeInfo)base["EmployeeInfo"]; }
      set { base["EmployeeInfo"] = value; }
    }
  }

  public class EmployeeInfo
  {
    public string Name;
    public string Address;
    public string Phone;
    public string EmergencyContactName;
    public string EmergencyContactAddress;
    public string EmergencyContactPhone;
  }
}
Imports System.Web.Profile

Namespace Samples.AspNet.Profile

  Public Class EmployeeProfile
    Inherits ProfileBase

    <SettingsAllowAnonymous(False)> _
    <ProfileProvider("EmployeeInfoProvider")> _
    Public Property Department As String
      Get
        Return MyBase.Item("EmployeeDepartment").ToString()
      End Get
      Set
        MyBase.Item("EmployeeDepartment") = value
      End Set
    End Property

    <SettingsAllowAnonymous(False)> _
    <ProfileProvider("EmployeeInfoProvider")> _
    Public Property Details As EmployeeInfo
      Get
        Return CType(MyBase.Item("EmployeeInfo"), EmployeeInfo)
      End Get
      Set
        MyBase.Item("EmployeeInfo") = value
      End Set
    End Property
  End Class

  Public Class EmployeeInfo
    Public Name As String
    Public Address As String
    Public Phone As String
    Public EmergencyContactName As String
    Public EmergencyContactAddress As String
    Public EmergencyContactPhone As String
  End Class

End Namespace

Commenti

La ProfileProviderAttribute classe viene usata per identificare il provider di profili per una proprietà di un'implementazione del profilo personalizzata. Un'implementazione del profilo personalizzata è una classe che eredita dalla ProfileBase classe astratta e definisce le proprietà per il profilo utente non specificato nell'elemento di configurazione del profilo . È possibile specificare un tipo personalizzato per il profilo utente usando l'attributo inherits dell'elemento di configurazione del profilo nel file Web.config per un'applicazione, come illustrato nell'esempio seguente.

<configuration>  
  <connectionStrings>  
    <add name="SqlServices" connectionString=  
      "Data Source=localhost;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />  
  </connectionStrings>  

  <system.web>  
    <authentication mode="Forms" >  
      <forms loginUrl="login.aspx"  
        name=".ASPXFORMSAUTH" />  
    </authentication>  

    <authorization>  
      <deny users="?" />  
    </authorization>  

    <profile inherits="Samples.AspNet.Profile.EmployeeProfile"  
      defaultProvider="SqlProvider">  
      <providers>  
        <clear />  
        <add  
          name="SqlProvider"  
          type="System.Web.Profile.SqlProfileProvider"   
          connectionStringName="SqlServices"   
          description="SQL Profile Provider for Sample"/>   
        <add  
          name="EmployeeInfoProvider"  
          type="System.Web.Profile.SqlProfileProvider"   
          connectionStringName="SqlServices"   
          description="SQL Profile Provider for Employee Info"/>   
      </providers>  

      <properties>  
        <add name="GarmentSize" />  
      </properties>  
    </profile>  
  </system.web>  
</configuration>  

Costruttori

ProfileProviderAttribute(String)

Crea una nuova istanza della classe ProfileProviderAttribute con il nome del provider di profili specificato.

Proprietà

ProviderName

Ottiene il nome del provider di profili per la proprietà del profilo utente.

TypeId

Quando è implementata in una classe derivata, ottiene un identificatore univoco della classe Attribute.

(Ereditato da Attribute)

Metodi

Equals(Object)

Restituisce un valore che indica se questa istanza è uguale a un oggetto specificato.

(Ereditato da Attribute)
GetHashCode()

Restituisce il codice hash per l'istanza.

(Ereditato da Attribute)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
IsDefaultAttribute()

In caso di override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata.

(Ereditato da Attribute)
Match(Object)

Quando è sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato.

(Ereditato da Attribute)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch.

(Ereditato da Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera le informazioni sul tipo relative a un oggetto, che possono essere usate per ottenere informazioni sul tipo relative a un'interfaccia.

(Ereditato da Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera il numero delle interfacce di informazioni sul tipo fornite da un oggetto (0 o 1).

(Ereditato da Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fornisce l'accesso a proprietà e metodi esposti da un oggetto.

(Ereditato da Attribute)

Si applica a

Vedi anche