다음을 통해 공유


방법: 계약 인터페이스를 사용하여 서비스 만들기

WCF(Windows Communication Foundation) 계약을 만드는 기본 방법은 인터페이스를 사용하는 것입니다. 이 계약은 서비스에서 제공하는 작업에 액세스하는 데 필요한 메시지 컬렉션과 구조를 지정합니다. 이 인터페이스는 ServiceContractAttribute 클래스를 인터페이스에 적용하고 OperationContractAttribute 클래스를 노출할 메서드에 적용하여 입력 및 출력 형식을 정의합니다.

서비스 계약에 대한 자세한 내용은 서비스 계약 디자인을 참조하세요.

인터페이스로 WCF 계약 만들기

  1. Visual Basic, C# 또는 기타 공용 언어 런타임 언어를 사용하여 새 인터페이스를 만듭니다.

  2. 인터페이스에 ServiceContractAttribute 클래스를 적용합니다.

  3. 인터페이스에 메서드를 정의합니다.

  4. 퍼블릭 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 클래스가 적용된 메서드는 기본적으로 요청-회신 메시지 패턴을 사용합니다. 이 메시지 패턴에 대한 자세한 내용은 방법: Request-Reply 계약 만들기를 참조하세요. 특성의 속성을 설정하여 다른 메시지 패턴을 만들고 사용할 수도 있습니다. 자세한 예제는 방법: One-Way 계약 만들기방법: 이중 계약 만들기를 참조하세요.

참고 항목