<system.serviceModel>
  <behaviors>
    <serviceBehaviors>
      <behavior name="MarinerERP.WebService.DataService.InsaServiceBehavior">
        <serviceMetadata httpGetEnabled="true" />
        <serviceDebug includeExceptionDetailInFaults="false" />
      </behavior>
    </serviceBehaviors>
  </behaviors>
  <services>
    <service behaviorConfiguration="MarinerERP.WebService.DataService.InsaServiceBehavior"
      name="MarinerERP.WebService.DataService.InsaService">
        <endpoint address="" binding="netTcpBinding" contract="IMarinerChannel.IInsaModule" />
      <endpoint address="mex1" binding="mexTcpBinding" contract="IMetadataExchange" />
<!—접속할땐 net.tcp://localhost:28800/dataservice/insaService.svc/mex1 이런식이 된다 –>
      <endpoint binding="basicHttpBinding" bindingConfiguration="" contract="IMarinerChannel.IInsaModule" />
    </service>
  </services>
</system.serviceModel>

 

WCF(Windows Communication Foundation) 서비스를 프로그래밍할 때 서비스에 대한 메타데이터를 게시하는 것이 좋습니다. 예를 들어, 메타데이터는 서비스에 사용되는 모든 메서드와 데이터 형식을 설명하는 WSDL(웹 서비스 기술 언어) 문서일 수 있습니다. WCF 서비스에 대한 메타데이터를 반환하면 서비스 사용자가 서비스에 대한 클라이언트를 손쉽게 만들 수 있습니다. WCF 메타데이터 끝점에 대한 자세한 내용은 메타데이터를 참조하십시오.

WCF를 사용하여 구현된 서비스는 하나 이상의 메타데이터 끝점을 공개하여 메타데이터를 게시합니다. WCF의 메타데이터 끝점에는 다른 끝점과 마찬가지로 주소, 바인딩 및 계약이 있습니다. MetadataReference 인터페이스는 WCF의 모든 메타데이터 끝점에서 구현되는 서비스 계약을 지정합니다.

서비스 구현에서 MetadataReference 계약을 구현할 필요는 없습니다. 대신 서비스 설명에 ServiceMetadataBehavior를 추가합니다.

또한 구성을 사용하는 경우에는 끝점 요소의 contract 특성을 IMetadataExchange로 설정합니다. 예제를 보려면 방법: 구성 파일을 사용하여 서비스의 메타데이터 게시를 참조하십시오.

WCF에서 메타데이터를 게시하는 방법에 대한 자세한 내용은 메타데이터 게시를 참조하십시오.

+ Recent posts