Compartilhar via


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 ela pode ser chamada pelo modelo de programação REST do WCF.

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

Comentários

O WebGetAttribute atributo é aplicado a uma operação de serviço além da OperationContractAttribute operação e associa a operação a um UriTemplate verbo Get do protocolo HTTP. A associação com o verbo HTTP Get significa que a operação é usada para recuperar informações do serviço. O WebGetAttribute atributo é um comportamento de operação passiva (os IOperationBehavior métodos não fazem nada) que adiciona metadados à descrição da operação. A aplicação do WebGetAttribute atributo a uma operação de serviço não tem efeito, a menos que um comportamento que esteja procurando por esses metadados na descrição da operação (como WebHttpBehavior) seja adicionado à coleção de comportamento do serviço.

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

Construtores

WebGetAttribute()

Inicializa uma nova instância da classe WebGetAttribute.

Propriedades

BodyStyle

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

IsBodyStyleSetExplicitly

Obtém a propriedade IsBodyStyleSetExplicitly.

IsRequestFormatSetExplicitly

Obtém a propriedade IsRequestFormatSetExplicitly.

IsResponseFormatSetExplicitly

Obtém a propriedade IsResponseFormatSetExplicitly.

RequestFormat

Obtém ou define a propriedade RequestFormat.

ResponseFormat

Obtém ou define a propriedade ResponseFormat.

TypeId

Quando implementado em uma classe derivada, obtém um identificador exclusivo para este Attribute.

(Herdado de Attribute)
UriTemplate

Obtém ou define o modelo de URI (Uniform Resource Identifier) para a operação de serviço.

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

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

IOperationBehavior.ApplyClientBehavior(OperationDescription, ClientOperation)

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

IOperationBehavior.ApplyDispatchBehavior(OperationDescription, DispatchOperation)

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

IOperationBehavior.Validate(OperationDescription)

Implementa o método Validate(OperationDescription).

Aplica-se a