SoapExtensionAttribute Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Quando substituído em uma classe derivada, especifica que uma extensão SOAP deve ser executada com um método de serviço Web XML.
public ref class SoapExtensionAttribute abstract : Attribute
public abstract class SoapExtensionAttribute : Attribute
type SoapExtensionAttribute = class
inherit Attribute
Public MustInherit Class SoapExtensionAttribute
Inherits Attribute
- Herança
Exemplos
TraceExtensionAttribute
A classe a seguir deriva de SoapExtensionAttribute para dar suporte à aplicação do atributo a um método de serviço Web XML ou a um método em uma classe proxy de cliente de serviço Web XML. Quando aplicada a qualquer um dos dois, a TraceExtension
extensão SOAP é executada com o método .
// Create a SoapExtensionAttribute for a SOAP extension that can be
// applied to an XML Web service method.
[AttributeUsage(AttributeTargets::Method)]
public ref class TraceExtensionAttribute: public SoapExtensionAttribute
{
private:
String^ myFilename;
int myPriority;
public:
// Set the name of the log file were SOAP messages will be stored.
TraceExtensionAttribute()
: SoapExtensionAttribute()
{
myFilename = "C:\\logClient.txt";
}
property Type^ ExtensionType
{
// Return the type of 'TraceExtension' class.
virtual Type^ get() override
{
return TraceExtension::typeid;
}
}
property int Priority
{
// User can set priority of the 'SoapExtension'.
virtual int get() override
{
return myPriority;
}
virtual void set( int value ) override
{
myPriority = value;
}
}
property String^ Filename
{
String^ get()
{
return myFilename;
}
void set( String^ value )
{
myFilename = value;
}
}
};
// Create a SoapExtensionAttribute for a SOAP extension that can be
// applied to an XML Web service method.
[AttributeUsage(AttributeTargets.Method)]
public class TraceExtensionAttribute : SoapExtensionAttribute {
private string myFilename;
private int myPriority;
// Set the name of the log file were SOAP messages will be stored.
public TraceExtensionAttribute() : base()
{
myFilename = "C:\\logClient.txt";
}
// Return the type of 'TraceExtension' class.
public override Type ExtensionType
{
get
{
return typeof(TraceExtension);
}
}
// User can set priority of the 'SoapExtension'.
public override int Priority
{
get
{
return myPriority;
}
set
{
myPriority = value;
}
}
public string Filename
{
get
{
return myFilename;
}
set
{
myFilename = value;
}
}
}
' Create a SoapExtensionAttribute for a SOAP extension that can be
' applied to an XML Web service method.
<AttributeUsage(AttributeTargets.Method)> _
Public Class TraceExtensionAttribute
Inherits SoapExtensionAttribute
Private m_filename As String = "c:\log.txt"
Private m_priority As Integer
' Return the type of 'TraceExtension' class.
Public Overrides ReadOnly Property ExtensionType() As Type
Get
Return GetType(TraceExtension)
End Get
End Property
' User can set priority of the 'TraceExtension'.
Public Overrides Property Priority() As Integer
Get
Return m_priority
End Get
Set(ByVal Value As Integer)
m_priority = value
End Set
End Property
Public Property Filename() As String
Get
Return m_filename
End Get
Set(ByVal Value As String)
m_filename = value
End Set
End Property
End Class
Comentários
Métodos de serviço Web XML criados usando ASP.NET podem ser configurados para serem executados com uma extensão SOAP aplicando um atributo ao método de serviço Web XML. Quando um atributo de extensão personalizado é adicionado a um método de serviço Web XML ou a um método em uma classe proxy de cliente, ASP.NET invoca a extensão associada no momento apropriado. Um atributo de extensão é uma classe de atributo personalizada derivada de SoapExtensionAttribute. Os atributos derivados devem substituir a ExtensionType propriedade para retornar o tipo de extensão associado ao atributo .
Construtores
SoapExtensionAttribute() |
Inicializa uma nova instância da classe SoapExtensionAttribute. |
Propriedades
ExtensionType |
Quando substituído em uma classe derivada, obtém o Type da extensão SOAP. |
Priority |
Quando substituído em uma classe derivada, obtém ou define a prioridade da extensão SOAP. |
TypeId |
Quando implementado em uma classe derivada, obtém um identificador exclusivo para este Attribute. (Herdado de Attribute) |
Métodos
Equals(Object) |
Retorna um valor que indica se essa instância é igual a um objeto especificado. (Herdado de Attribute) |
GetHashCode() |
Retorna o código hash para a instância. (Herdado de Attribute) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
IsDefaultAttribute() |
Quando substituído em uma classe derivada, indica se o valor dessa instância é o valor padrão para a classe derivada. (Herdado de Attribute) |
Match(Object) |
Quando substituído em uma classe derivada, retorna um valor que indica se essa instância é igual a um objeto especificado. (Herdado de Attribute) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Implantações explícitas de interface
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição. (Herdado de Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera as informações de tipo para um objeto, que pode ser usado para obter as informações de tipo para uma interface. (Herdado de Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1). (Herdado de Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fornece acesso a propriedades e métodos expostos por um objeto. (Herdado de Attribute) |