ProfileProviderAttribute Klasa

Definicja

Identyfikuje dostawcę profilu dla właściwości profilu użytkownika.

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
Dziedziczenie
ProfileProviderAttribute
Atrybuty

Przykłady

Poniższy przykład kodu definiuje klasę dziedziczą z ProfileBase klasy w celu utworzenia profilu niestandardowego. Typ profilu niestandardowego jest określony w inherits atrybucie elementu konfiguracji profilu w pliku Web.config dla aplikacji.

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

Uwagi

Klasa ProfileProviderAttribute służy do identyfikowania dostawcy profilu dla właściwości implementacji profilu niestandardowego. Implementacja profilu niestandardowego to klasa dziedziczona z ProfileBase klasy abstrakcyjnej i definiuje właściwości profilu użytkownika, które nie są określone w elemecie konfiguracji profilu . Można określić typ niestandardowy profilu użytkownika przy użyciu inherits atrybutu elementu konfiguracji profilu w pliku Web.config dla aplikacji, jak pokazano w poniższym przykładzie.

<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>  

Konstruktory

ProfileProviderAttribute(String)

Tworzy nowe wystąpienie ProfileProviderAttribute klasy o określonej nazwie dostawcy profilu.

Właściwości

ProviderName

Pobiera nazwę dostawcy profilu dla właściwości profilu użytkownika.

TypeId

Po zaimplementowaniu w klasie pochodnej pobiera unikatowy identyfikator dla tego elementu Attribute.

(Odziedziczone po Attribute)

Metody

Equals(Object)

Zwraca wartość wskazującą, czy to wystąpienie jest równe podanemu obiektowi.

(Odziedziczone po Attribute)
GetHashCode()

Zwraca wartość skrótu dla tego wystąpienia.

(Odziedziczone po Attribute)
GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
IsDefaultAttribute()

W przypadku zastąpienia w klasie pochodnej wskazuje, czy wartość tego wystąpienia jest wartością domyślną klasy pochodnej.

(Odziedziczone po Attribute)
Match(Object)

W przypadku zastąpienia w klasie pochodnej zwraca wartość wskazującą, czy to wystąpienie jest równe określonemu obiektowi.

(Odziedziczone po Attribute)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Jawne implementacje interfejsu

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

Zestaw nazw jest mapowany na odpowiedni zestaw identyfikatorów wysyłania.

(Odziedziczone po Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Pobiera informacje o typie obiektu, którego można użyć do pobrania informacji o typie interfejsu.

(Odziedziczone po Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Pobiera informację o liczbie typów interfejsów, jakie zawiera obiekt (0 lub 1).

(Odziedziczone po Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Umożliwia dostęp do właściwości i metod udostępnianych przez obiekt.

(Odziedziczone po Attribute)

Dotyczy

Zobacz też