Compartir a través de


WebGetAttribute Clase

Definición

Representa un atributo que indica que una operación de servicio es lógicamente una operación de recuperación y que el modelo de programación WCF REST puede llamarla.

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
Herencia
WebGetAttribute
Atributos
Implementaciones

Ejemplos

En el ejemplo siguiente se muestra cómo utilizar el atributo WebGetAttribute.

[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

Comentarios

El atributo WebGetAttribute se aplica a una operación del servicio además del OperationContractAttribute y asocia la operación a una UriTemplate, así como al verbo Get del protocolo HTTP. La asociación con el verbo Get de HTTP significa que la operación se utiliza para recuperar información del servicio. El WebGetAttribute atributo es un comportamiento de operación pasivo (los IOperationBehavior métodos no hacen nada) que agrega metadatos a la descripción de la operación. Aplicar el atributo WebGetAttribute a una operación de servicio no tiene efecto alguno a menos que se agregue a la colección de comportamientos del servicio un comportamiento que busque estos metadatos en la descripción de la operación (como, por ejemplo, WebHttpBehavior).

Las operaciones de servicio con el atributo WebGetAttribute aplicado deberían ser operaciones de recuperación lógicas. El método GET de HTTP está asociado a todas las operaciones marcadas con el atributo WebGetAttribute.

Constructores

WebGetAttribute()

Inicializa una nueva instancia de la clase WebGetAttribute.

Propiedades

BodyStyle

Obtiene o establece el estilo del cuerpo de los mensajes que se envían hacia y desde la operación de servicio.

IsBodyStyleSetExplicitly

Obtiene la propiedad IsBodyStyleSetExplicitly.

IsRequestFormatSetExplicitly

Obtiene la propiedad IsRequestFormatSetExplicitly.

IsResponseFormatSetExplicitly

Obtiene la propiedad IsResponseFormatSetExplicitly.

RequestFormat

Obtiene o establece la propiedad RequestFormat.

ResponseFormat

Obtiene o establece la propiedad ResponseFormat.

TypeId

Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute.

(Heredado de Attribute)
UriTemplate

Obtiene o establece la plantilla del identificador uniforme de recursos (URI) para la operación de servicio.

Métodos

Equals(Object)

Devuelve un valor que indica si esta instancia es igual que un objeto especificado.

(Heredado de Attribute)
GetHashCode()

Devuelve el código hash de esta instancia.

(Heredado de Attribute)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
IsDefaultAttribute()

Si se reemplaza en una clase derivada, indica si el valor de esta instancia es el valor predeterminado de la clase derivada.

(Heredado de Attribute)
Match(Object)

Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado.

(Heredado de Attribute)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

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

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.

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

Obtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz.

(Heredado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).

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

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.

(Heredado de Attribute)
IOperationBehavior.AddBindingParameters(OperationDescription, BindingParameterCollection)

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

IOperationBehavior.ApplyClientBehavior(OperationDescription, ClientOperation)

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

IOperationBehavior.ApplyDispatchBehavior(OperationDescription, DispatchOperation)

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

IOperationBehavior.Validate(OperationDescription)

Implementa el método Validate(OperationDescription).

Se aplica a