SettingsAllowAnonymousAttribute Classe

Definição

Identifica se uma propriedade de perfil pode ser definida ou acedida por um utilizador anónimo.

public ref class SettingsAllowAnonymousAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Property)]
public sealed class SettingsAllowAnonymousAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Property)>]
type SettingsAllowAnonymousAttribute = class
    inherit Attribute
Public NotInheritable Class SettingsAllowAnonymousAttribute
Inherits Attribute
Herança
SettingsAllowAnonymousAttribute
Atributos

Exemplos

O seguinte exemplo de código define uma classe que herda de para ProfileBase criar um perfil personalizado. O tipo do perfil personalizado é especificado no inherits atributo do elemento de configuração do perfil no ficheiro Web.config de uma aplicação.

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

Observações

A SettingsAllowAnonymousAttribute classe é usada para identificar se uma propriedade de uma implementação de perfil personalizado pode ser acedida se o utilizador for um utilizador anónimo. Para informações sobre como permitir a identificação anónima, consulte a documentação fornecida para o elemento de configuração anonymousIdentification .

Se SettingsAllowAnonymousAttribute não for especificado para uma propriedade de perfil, não é permitido o acesso anónimo dessa propriedade.

Uma implementação de perfil personalizada é uma classe que herda da ProfileBase classe abstrata e define propriedades para o perfil de utilizador que não são especificadas no elemento de configuração do perfil . Pode especificar um tipo de perfil de utilizador personalizado no ficheiro Web.config da aplicação com o inherits atributo do elemento de configuração do perfil , como mostrado no exemplo seguinte.

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

Construtores

Name Description
SettingsAllowAnonymousAttribute(Boolean)

Cria uma nova instância da SettingsAllowAnonymousAttribute classe e especifica se deve permitir acesso anónimo à propriedade de perfil associada.

Propriedades

Name Description
Allow

Recebe um valor que indica se a propriedade associada a uma implementação de perfil personalizado pode ser acedida se o utilizador for um utilizador anónimo.

TypeId

Quando implementado numa classe derivada, obtém um identificador único para esta Attribute.

(Herdado de Attribute)

Métodos

Name Description
Equals(Object)

Devolve um valor que indica se esta instância é igual a um objeto especificado.

(Herdado de Attribute)
GetHashCode()

Devolve o código de hash para esta instância.

(Herdado de Attribute)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
IsDefaultAttribute()

Recebe um valor que indica se a Allow propriedade está definida para o valor padrão.

Match(Object)

Quando sobrescrito numa classe derivada, devolve um valor que indica se esta instância é igual a um objeto especificado.

(Herdado de Attribute)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)

Implementações de Interface Explícita

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

Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de despacho.

(Herdado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera a informação de tipo de um objeto, que pode ser usada para obter a informação de tipo para uma interface.

(Herdado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera o número de interfaces de informações de tipo que um objeto fornece (0 ou 1).

(Herdado de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acesso a propriedades e métodos expostos por um objeto.

(Herdado de Attribute)

Aplica-se a

Ver também