Condividi tramite


WebGetAttribute Classe

Definizione

Rappresenta un attributo che indica che l'operazione del servizio è dal punto di vista logico un'operazione di recupero e che può essere chiamata dal modello di programmazione REST di 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
Ereditarietà
WebGetAttribute
Attributi
Implementazioni

Esempio

Nell'esempio seguente viene illustrato l'utilizzo dell'attributo 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

Commenti

L’attributo WebGetAttribute è applicato a un’operazione del servizio oltre a OperationContractAttribute e associa l’operazione a un UriTemplate nonché a un verbo GET del protocollo. L'associazione con il verbo GET HTTP indica che l'operazione è utilizzata per recuperare informazioni dal servizio. L'attributo WebGetAttribute è un comportamento dell'operazione passiva (i IOperationBehavior metodi non eseguono alcuna operazione) che aggiunge metadati alla descrizione dell'operazione. L'applicazione dell’attributo WebGetAttribute a un’operazione del servizio non ha alcun effetto a meno che alla raccolta dei comportamenti del servizio non venga aggiunto un comportamento che ricerca questi metadati nella descrizione dell'operazione (ad esempio WebHttpBehavior).

Le operazioni del servizio cha applicano l'attributo WebGetAttribute devono essere operazioni di recupero logiche. Il metodo GET HTTP è associato a tutte le operazioni contrassegnate con l’attributo WebGetAttribute.

Costruttori

WebGetAttribute()

Inizializza una nuova istanza della classe WebGetAttribute.

Proprietà

BodyStyle

Ottiene o imposta lo stile del corpo dei messaggi inviati da e verso l'operazione del servizio.

IsBodyStyleSetExplicitly

Ottiene la proprietà IsBodyStyleSetExplicitly.

IsRequestFormatSetExplicitly

Ottiene la proprietà IsRequestFormatSetExplicitly.

IsResponseFormatSetExplicitly

Ottiene la proprietà IsResponseFormatSetExplicitly.

RequestFormat

Ottiene o imposta la proprietà RequestFormat.

ResponseFormat

Ottiene o imposta la proprietà ResponseFormat.

TypeId

Quando è implementata in una classe derivata, ottiene un identificatore univoco della classe Attribute.

(Ereditato da Attribute)
UriTemplate

Ottiene o imposta il modello URI (Uniform Resource Identifier) per l'operazione del servizio.

Metodi

Equals(Object)

Restituisce un valore che indica se questa istanza è uguale a un oggetto specificato.

(Ereditato da Attribute)
GetHashCode()

Restituisce il codice hash per l'istanza.

(Ereditato da Attribute)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
IsDefaultAttribute()

In caso di override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata.

(Ereditato da Attribute)
Match(Object)

Quando è sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato.

(Ereditato da Attribute)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

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

Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch.

(Ereditato da Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera le informazioni sul tipo relative a un oggetto, che possono essere usate per ottenere informazioni sul tipo relative a un'interfaccia.

(Ereditato da Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera il numero delle interfacce di informazioni sul tipo fornite da un oggetto (0 o 1).

(Ereditato da Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fornisce l'accesso a proprietà e metodi esposti da un oggetto.

(Ereditato da Attribute)
IOperationBehavior.AddBindingParameters(OperationDescription, BindingParameterCollection)

Implementa il metodo AddBindingParameters(OperationDescription, BindingParameterCollection).

IOperationBehavior.ApplyClientBehavior(OperationDescription, ClientOperation)

Implementa il metodo ApplyClientBehavior(OperationDescription, ClientOperation).

IOperationBehavior.ApplyDispatchBehavior(OperationDescription, DispatchOperation)

Implementa il metodo ApplyDispatchBehavior(OperationDescription, DispatchOperation).

IOperationBehavior.Validate(OperationDescription)

Implementa il metodo Validate(OperationDescription).

Si applica a