方法: コントラクト インターフェイスを使用してサービスを作成する
推奨される Windows Communication Foundation (WCF) コントラクト作成方法は、インターフェイスを使用することです。 このコントラクトでは、サービスが提供する操作にアクセスするために必要なメッセージのコレクションと構造を指定します。 このインターフェイスでは、インターフェイスに ServiceContractAttribute クラスを適用し、公開するメソッドに OperationContractAttribute クラスを適用して、入力と出力の種類を定義します。
サービス コントラクトの詳細については、「サービス コントラクトの設計」を参照してください。
インターフェイスを使用した WCF コントラクトの作成
Visual Basic、C#、またはその他の共通言語ランタイム言語を使用して、新しいインターフェイスを作成します。
インターフェイスに ServiceContractAttribute クラスを適用します。
インターフェイスのメソッドを定義します。
WCF のパブリック コントラクトの一部として公開する必要のある各メソッドに OperationContractAttribute クラスを適用します。
例
次のコード例は、サービス コントラクトを定義するインターフェイスを示しています。
using System.ServiceModel;
[ServiceContract]
public interface ICalculator
{
[OperationContract]
double Add(double n1, double n2);
[OperationContract]
double Subtract(double n1, double n2);
[OperationContract]
double Multiply(double n1, double n2);
[OperationContract]
double Divide(double n1, double n2);
}
<ServiceContract()> _
Public Interface ICalculator
<OperationContract()> _
Function Add(ByVal n1 As Double, ByVal n2 As Double) As Double
<OperationContract()> _
Function Subtract(ByVal n1 As Double, ByVal n2 As Double) As Double
<OperationContract()> _
Function Multiply(ByVal n1 As Double, ByVal n2 As Double) As Double
<OperationContract()> _
Function Divide(ByVal n1 As Double, ByVal n2 As Double) As Double
End Interface
OperationContractAttribute クラスが適用されたメソッドは、既定で要求/応答メッセージ パターンを使用します。 このメッセージ パターンの詳細については、「方法: 要求/応答コントラクトを作成する」を参照してください。 属性のプロパティを設定することにより、他のメッセージ パターンを作成および使用できるようになります。 その他の例については、「方法: 一方向コントラクトを作成する」および「方法: 双方向コントラクトを作成する」を参照してください。