WebGetAttribute クラス

定義

サービス操作が論理的には取得操作であり、WCF REST プログラミング モデルで呼び出すことができることを示す属性を表します。Represents an attribute indicating that a service operation is logically a retrieval operation and that it can be called by the WCF REST programming model.

public ref class WebGetAttribute sealed : Attribute, System::ServiceModel::Description::IOperationBehavior
[System.AttributeUsage(System.AttributeTargets.Method)]
public sealed class WebGetAttribute : Attribute, System.ServiceModel.Description.IOperationBehavior
type WebGetAttribute = class
    inherit Attribute
    interface IOperationBehavior
Public NotInheritable Class WebGetAttribute
Inherits Attribute
Implements IOperationBehavior
継承
WebGetAttribute
属性
実装

WebGetAttribute 属性を使用する方法を次のコード例に示します。The following example shows how to use the WebGetAttribute attribute.

[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

注釈

WebGetAttribute 属性は、OperationContractAttribute に加えてサービス操作に適用され、その操作を、HTTP プロトコルの Get 動詞と同様に UriTemplate と関連付けます。The WebGetAttribute attribute is applied to a service operation in addition to the OperationContractAttribute and associates the operation with a UriTemplate as well as the HTTP protocol Get verb. HTTP の Get 動詞と関連付けるということは、その操作がサービスから情報を取得するために使用されることを意味します。The association with HTTP Get verb means that the operation is used to retrieve information from the service. WebGetAttribute 属性は、操作の説明にメタデータを追加するパッシブな操作の動作です (IOperationBehavior メソッドは何も行いません)。The WebGetAttribute attribute is a passive operation behavior (the IOperationBehavior methods do nothing) that adds metadata to the operation description. このメタデータを操作の説明で検索する動作 (WebGetAttribute など) がサービスの動作コレクションに追加されていない場合は、WebHttpBehavior 属性をサービス操作に適用しても機能しません。Applying the WebGetAttribute attribute to a service operation has no effect unless a behavior that is looking for this metadata in the operation description (such as WebHttpBehavior) is added to the service's behavior collection.

WebGetAttribute 属性を適用されたサービス操作は、論理的な取得操作です。Service operations with the WebGetAttribute attribute applied should be logical retrieval operations. HTTP GET メソッドは WebGetAttribute 属性付きのすべての操作に関連付けられます。The HTTP GET method is associated with all operations marked with the WebGetAttribute attribute.

コンストラクター

WebGetAttribute()

WebGetAttribute クラスの新しいインスタンスを初期化します。Initializes a new instance of the WebGetAttribute class.

プロパティ

BodyStyle

サービス操作との間で送受信されるメッセージの本文のスタイルを取得または設定します。Gets or sets the body style of the messages that are sent to and from the service operation.

IsBodyStyleSetExplicitly

IsBodyStyleSetExplicitly プロパティを取得します。Gets the IsBodyStyleSetExplicitly property.

IsRequestFormatSetExplicitly

IsRequestFormatSetExplicitly プロパティを取得します。Gets the IsRequestFormatSetExplicitly property.

IsResponseFormatSetExplicitly

IsResponseFormatSetExplicitly プロパティを取得します。Gets the IsResponseFormatSetExplicitly property.

RequestFormat

RequestFormat プロパティを取得または設定します。Gets or sets the RequestFormat property.

ResponseFormat

ResponseFormat プロパティを取得または設定します。Gets or sets the ResponseFormat property.

TypeId

派生クラスで実装されると、この Attribute の一意の識別子を取得します。When implemented in a derived class, gets a unique identifier for this Attribute.

(継承元 Attribute)
UriTemplate

サービス操作の URI (Uniform Resource Identifier) テンプレートを取得または設定します。Gets or sets the Uniform Resource Identifier (URI) template for the service operation.

メソッド

Equals(Object)

このインスタンスが、指定されたオブジェクトと等価であるかどうかを示す値を返します。Returns a value that indicates whether this instance is equal to a specified object.

(継承元 Attribute)
GetHashCode()

このインスタンスのハッシュ コードを返します。Returns the hash code for this instance.

(継承元 Attribute)
GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)
IsDefaultAttribute()

派生クラスでオーバーライドされるとき、このインスタンスの値が派生クラスの既定値であるかどうかを示します。When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(継承元 Attribute)
Match(Object)

派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(継承元 Attribute)
MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
ToString()

現在のオブジェクトを表す string を返します。Returns a string that represents the current object.

(継承元 Object)

明示的なインターフェイスの実装

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

一連の名前を対応する一連のディスパッチ識別子に割り当てます。Maps a set of names to a corresponding set of dispatch identifiers.

(継承元 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

オブジェクトの型情報を取得します。この情報はインターフェイスの型情報の取得に使用できます。Retrieves the type information for an object, which can be used to get the type information for an interface.

(継承元 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

オブジェクトが提供する型情報インターフェイスの数 (0 または 1) を取得します。Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(継承元 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

オブジェクトによって公開されたプロパティおよびメソッドへのアクセスを提供します。Provides access to properties and methods exposed by an object.

(継承元 Attribute)
IOperationBehavior.AddBindingParameters(OperationDescription, BindingParameterCollection)

AddBindingParameters(OperationDescription, BindingParameterCollection) メソッドを実装します。Implements the AddBindingParameters(OperationDescription, BindingParameterCollection) method.

IOperationBehavior.ApplyClientBehavior(OperationDescription, ClientOperation)

ApplyClientBehavior(OperationDescription, ClientOperation) メソッドを実装します。Implements the ApplyClientBehavior(OperationDescription, ClientOperation) method.

IOperationBehavior.ApplyDispatchBehavior(OperationDescription, DispatchOperation)

ApplyDispatchBehavior(OperationDescription, DispatchOperation) メソッドを実装します。Implements the ApplyDispatchBehavior(OperationDescription, DispatchOperation) method.

IOperationBehavior.Validate(OperationDescription)

Validate(OperationDescription) メソッドを実装します。Implements the Validate(OperationDescription) method.

IOperationContractAttributeProvider.GetOperationContractAttribute()
IWmiInstanceProvider.FillInstance(IWmiInstance)
IWmiInstanceProvider.GetInstanceType()

適用対象