다음을 통해 공유


메타데이터 검색

메타데이터 검색은 meX(WS-MetadataExchange) 메타데이터 엔드포인트 또는 HTTP/GET 메타데이터 엔드포인트와 같은 메타데이터 엔드포인트에서 메타데이터를 요청하고 검색하는 프로세스입니다.

Svcutil.exe 사용하여 명령줄에서 메타데이터 검색

ServiceModel 메타데이터 유틸리티 도구(Svcutil.exe) 도구를 사용하고 스위치 및 주소를 전달 /target:metadata 하여 WS-MetadataExchange 또는 HTTP/GET 요청을 사용하여 서비스 메타데이터를 검색할 수 있습니다. Svcutil.exe 지정된 주소에서 메타데이터를 다운로드하고 파일을 디스크에 저장합니다. Svcutil.exe은 내부적으로 System.ServiceModel.Description.MetadataExchangeClient 인스턴스를 사용하고, Svcutil.exe에 입력으로 전달된 주소의 체계와 일치하는 구성 이름의 IMetadataExchange 엔드포인트 구성을 로드합니다.

MetadataExchangeClient를 사용하여 프로그래밍 방식으로 메타데이터 검색

WCF(Windows Communication Foundation)는 WS-MetadataExchange 및 HTTP/GET 요청과 같은 표준화된 프로토콜을 사용하여 서비스 메타데이터를 검색할 수 있습니다. 이러한 프로토콜은 모두 형식에서 MetadataExchangeClient 지원됩니다. 메타데이터 엔드포인트에 대한 주소와 선택적 바인딩을 제공하여 System.ServiceModel.Description.MetadataExchangeClient 타입을 사용해 서비스 메타데이터를 검색합니다. 인스턴스에서 System.ServiceModel.Description.MetadataExchangeClient 사용하는 바인딩은 정적 클래스의 기본 바인딩, 사용자가 제공한 바인딩 MetadataExchangeBindings 또는 계약에 대한 IMetadataExchange 엔드포인트 구성에서 로드된 바인딩 중 하나일 수 있습니다. 형식을 System.ServiceModel.Description.MetadataExchangeClient 사용하여 HttpWebRequest 메타데이터에 대한 HTTP URL 참조를 확인할 수도 있습니다.

기본적으로, System.ServiceModel.Description.MetadataExchangeClient 인스턴스는 단일 ChannelFactory 인스턴스에 기본적으로 연결됩니다. System.ServiceModel.ChannelFactory 가상 메서드를 재정의하여 System.ServiceModel.Description.MetadataExchangeClient에서 사용되는 GetChannelFactory 인스턴스를 변경하거나 교체할 수 있습니다. 마찬가지로, HttpWebRequest 가상 메서드를 재정의하여 HTTP/GET 요청을 만드는 데 사용되는 System.ServiceModel.Description.MetadataExchangeClient 인스턴스를 변경하거나 MetadataExchangeClient.GetWebRequest 인스턴스를 교체할 수 있습니다.

이 섹션 안에

방법: Svcutil.exe 사용하여 메타데이터 문서 다운로드
Svcutil.exe 사용하여 메타데이터 문서를 다운로드하는 방법을 보여 줍니다.

방법: MetadataResolver를 사용하여 동적으로 바인딩 메타데이터 가져오기
런타임에 바인딩 메타데이터를 System.ServiceModel.Description.MetadataResolver 동적으로 가져오는 방법을 보여 줍니다.

방법: MetadataExchangeClient를 사용하여 메타데이터 검색
System.ServiceModel.Description.MetadataExchangeClient 클래스를 사용하여 메타데이터 파일을 다운로드하여 파일에 쓰거나 기타 용도로 사용할 System.ServiceModel.Description.MetadataSet 개체를 포함하는 System.ServiceModel.Description.MetadataSection 객체로 변환하는 방법을 보여줍니다.

참고하십시오