WebGetAttribute Classe

Definição

Representa um atributo que indica que uma operação de serviço é logicamente uma operação de recuperação e que pode ser chamada pelo modelo de programação WCF REST.

public ref class WebGetAttribute sealed : Attribute, System::ServiceModel::Description::IOperationBehavior
[System.AttributeUsage(System.AttributeTargets.Method)]
public sealed class WebGetAttribute : Attribute, System.ServiceModel.Description.IOperationBehavior
[<System.AttributeUsage(System.AttributeTargets.Method)>]
type WebGetAttribute = class
    inherit Attribute
    interface IOperationBehavior
Public NotInheritable Class WebGetAttribute
Inherits Attribute
Implements IOperationBehavior
Herança
WebGetAttribute
Atributos
Implementações

Exemplos

O exemplo seguinte mostra como usar o WebGetAttribute atributo.

[ServiceContract]
public interface ICalculator
{
    [OperationContract]
    [WebGet]
    long Add(long x, long y);

    [OperationContract]
    [WebGet(UriTemplate = "Sub?x={x}&y={y}")]
    long Subtract(long x, long y);

    [OperationContract]
    [WebGet(UriTemplate = "Mult?x={x}&y={y}", BodyStyle = WebMessageBodyStyle.Bare)]
    long Multiply(long x, long y);

    [OperationContract]
    [WebGet(UriTemplate = "Div?x={x}&y={y}", RequestFormat = WebMessageFormat.Xml)]
    long Divide(long x, long y);

    [OperationContract]
    [WebGet(ResponseFormat= WebMessageFormat.Json)]
    long Mod(long x, long y);
}
<ServiceContract()> _
Public Interface ICalculator
    <OperationContract()> _
    <WebGet()> _
    Function Add(ByVal x As Long, ByVal y As Long) As Long

    <OperationContract()> _
    <WebGet(UriTemplate:="Sub?x={x}&y={y}")> _
    Function Subtract(ByVal x As Long, ByVal y As Long) As Long

    <OperationContract()> _
    <WebGet(UriTemplate:="Mult?x={x}&y={y}", BodyStyle:=WebMessageBodyStyle.Bare)> _
    Function Multiply(ByVal x As Long, ByVal y As Long) As Long

    <OperationContract()> _
    <WebGet(UriTemplate:="Div?x={x}&y={y}", RequestFormat:=WebMessageFormat.Xml)> _
    Function Divide(ByVal x As Long, ByVal y As Long) As Long

    <OperationContract()> _
    <WebGet(ResponseFormat:=WebMessageFormat.Json)> _
    Function Modulo(ByVal x As Long, ByVal y As Long) As Long
End Interface

Observações

O WebGetAttribute atributo é aplicado a uma operação de serviço além do OperationContractAttribute e associa a operação a UriTemplate um bem como ao protocolo HTTP Get verb. A associação com o verbo HTTP Get significa que a operação é usada para recuperar informação do serviço. O WebGetAttribute atributo é um comportamento passivo de operação (os IOperationBehavior métodos não fazem nada) que adiciona metadados à descrição da operação. Aplicar o WebGetAttribute atributo a uma operação de serviço não tem efeito a menos que um comportamento que procure estes metadados na descrição da operação (como WebHttpBehavior) seja adicionado à coleção de comportamentos do serviço.

Operações de serviço com o WebGetAttribute atributo aplicado devem ser operações lógicas de recuperação. O método HTTP GET está associado a todas as operações marcadas com o WebGetAttribute atributo.

Construtores

Name Description
WebGetAttribute()

Inicializa uma nova instância da WebGetAttribute classe.

Propriedades

Name Description
BodyStyle

Obtém ou define o estilo do corpo das mensagens enviadas para e da operação de serviço.

IsBodyStyleSetExplicitly

Fica com a IsBodyStyleSetExplicitly propriedade.

IsRequestFormatSetExplicitly

Fica com a IsRequestFormatSetExplicitly propriedade.

IsResponseFormatSetExplicitly

Fica com a IsResponseFormatSetExplicitly propriedade.

RequestFormat

Obtém ou definem a RequestFormat propriedade.

ResponseFormat

Obtém ou definem a ResponseFormat propriedade.

TypeId

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

(Herdado de Attribute)
UriTemplate

Obtém ou define o modelo de Identificador Uniforme de Recursos (URI) para a operação de serviço.

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

Quando sobrescrito numa classe derivada, indica se o valor desta instância é o valor padrão para a classe derivada.

(Herdado de Attribute)
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)
IOperationBehavior.AddBindingParameters(OperationDescription, BindingParameterCollection)

Implementa o AddBindingParameters(OperationDescription, BindingParameterCollection) método.

IOperationBehavior.ApplyClientBehavior(OperationDescription, ClientOperation)

Implementa o ApplyClientBehavior(OperationDescription, ClientOperation) método.

IOperationBehavior.ApplyDispatchBehavior(OperationDescription, DispatchOperation)

Implementa o ApplyDispatchBehavior(OperationDescription, DispatchOperation) método.

IOperationBehavior.Validate(OperationDescription)

Implementa o Validate(OperationDescription) método.

Aplica-se a