Bibliothèque de classes .NET Framework
WebGetAttribute, classe

Mise à jour : novembre 2007

Indique qu'une opération de service est logiquement une opération de récupération et qu'elle peut être appelée par le modèle de programmation Web.

Espace de noms :  System.ServiceModel.Web
Assembly :  System.ServiceModel.Web (dans System.ServiceModel.Web.dll)
Syntaxe

Visual Basic (Déclaration)
<AttributeUsageAttribute(AttributeTargets.Method)> _
Public NotInheritable Class WebGetAttribute _
    Inherits Attribute _
    Implements IOperationBehavior, IWmiInstanceProvider
Visual Basic (Utilisation)
Dim instance As WebGetAttribute
C#
[AttributeUsageAttribute(AttributeTargets.Method)]
public sealed class WebGetAttribute : Attribute, 
    IOperationBehavior, IWmiInstanceProvider
VisualC++
[AttributeUsageAttribute(AttributeTargets::Method)]
public ref class WebGetAttribute sealed : public Attribute, 
    IOperationBehavior, IWmiInstanceProvider
J#
/** @attribute AttributeUsageAttribute(AttributeTargets.Method) */
public final class WebGetAttribute extends Attribute implements IOperationBehavior, 
    IWmiInstanceProvider
JScript
public final class WebGetAttribute extends Attribute implements IOperationBehavior, IWmiInstanceProvider
Notes

L'attribut WebGetAttribute est appliqué à une opération de service en plus de OperationContractAttribute et associe l'opération avec un UriTemplate ainsi que le verbe Get du protocole HTTP. L'association avec le verbe GET de HTTP signifie que l'opération est utilisée pour récupérer des informations du service. L'attribut WebGetAttribute est un comportement d'opération passif (les méthodes IOperationBehavior ne font rien) qui ajoute des métadonnées à la description de l'opération. L'application de l'attribut WebGetAttribute à une opération de service n'a aucun effet, à moins qu'un comportement qui recherche ces métadonnées dans la description de l'opération (tel que WebHttpBehavior) ne soit ajouté à la collection de comportements du service.

Les opérations de service avec l'attribut WebGetAttribute appliqué doivent être des opérations de récupération logiques. La méthode HTTP GET est associée à toutes les opérations marquées avec l'attribut WebGetAttribute.

Exemples

L'exemple suivant montre comment utiliser l'attribut WebGetAttribute.

Visual Basic
<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
C#
[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);
}
Hiérarchie d'héritage

System..::.Object
  System..::.Attribute
    System.ServiceModel.Web..::.WebGetAttribute
Sécurité des threads

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.
Plateformes

Windows Vista, Windows XP SP2, Windows Server 2003

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Informations de version

.NET Framework

Pris en charge dans : 3.5
Voir aussi

Référence

Mots clés :


Page view tracker