다음을 통해 공유


System.Runtime.Serialization.XsdDataContractExporter 클래스

이 문서에서는 이 API에 대한 참조 설명서에 대한 추가 설명서를 제공합니다.

XsdDataContractExporter CLR(공용 언어 런타임) 형식으로 표현되는 데이터를 통합하는 웹 서비스를 만든 경우와 다른 웹 서비스에서 사용할 각 형식에 대한 XML 스키마를 내보내야 하는 경우 클래스를 사용합니다. 즉, XsdDataContractExporter CLR 형식 집합을 XML 스키마로 변환합니다. (사용할 수 있는 형식에 대한 자세한 내용은 다음을 참조하세요 .데이터 계약 직렬 변환기에서 지원하는 형식입니다.) 그런 다음 서비스와 상호 운용해야 하는 다른 사용자가 사용할 수 있도록 WSDL(Web Services Description Language) 문서를 통해 스키마를 노출할 수 있습니다.

반대로 기존 웹 서비스와 상호 운용해야 하는 웹 서비스를 XsdDataContractImporter 만드는 경우 XML 스키마를 변환하고 선택한 프로그래밍 언어로 데이터를 나타내는 CLR 형식을 만듭니다.

스키 XsdDataContractExporter 마 컬렉션이 포함된 개체를 생성 XmlSchemaSet 합니다. 속성을 통해 스키마 집합에 액세스합니다 Schemas() .

참고 항목

다른 웹 서비스에서 사용할 수 있는 XSD(XML 스키마 정의) 파일을 신속하게 생성하려면 다음을 XsdDataContractExporter사용합니다.

XmlSchemaSet으로 스키마 내보내기

XML 스키마 파일이 포함된 클래스의 XmlSchemaSet 인스턴스를 만들려면 다음 사항에 유의해야 합니다.

내보내는 형식 집합은 내부 데이터 계약 집합으로 기록됩니다. 따라서 새 형식만 집합에 CanExport 추가되므로 성능 저하 없이 메서드를 여러 번 호출하여 스키마 집합에 새 형식을 추가할 수 있습니다. 작업 중에 Export 기존 스키마는 추가되는 새 스키마와 비교됩니다. 충돌이 발생하면 예외가 throw됩니다. 일반적으로 데이터 계약 이름이 같지만 서로 다른 계약(다른 멤버)을 가진 두 형식이 동일한 XsdDataContractExporter 인스턴스에서 내보내는 경우 충돌이 검색됩니다.

내보내기 사용

이 클래스를 사용하는 권장 방법은 다음과 같습니다.

  1. 오버로드 중 CanExport 하나를 사용하여 지정된 형식 또는 형식 집합을 내보낼 수 있는지 여부를 확인합니다. 요구 사항에 적합한 오버로드 중 하나를 사용합니다.

  2. 해당 메서드를 호출합니다 Export .

  3. 속성에서 스키마를 검색합니다 Schemas .