System.Runtime.Serialization.XsdDataContractExporter, klasa
Ten artykuł zawiera dodatkowe uwagi dotyczące dokumentacji referencyjnej dla tego interfejsu API.
XsdDataContractExporter Użyj klasy podczas tworzenia usługi sieci Web, która zawiera dane reprezentowane przez typy środowiska uruchomieniowego języka wspólnego (CLR) i kiedy należy wyeksportować schematy XML dla każdego typu, które mają być używane przez inne usługi sieci Web. Oznacza to, że XsdDataContractExporter przekształca zestaw typów CLR w schematy XML. (Aby uzyskać więcej informacji na temat typów, których można użyć, zobacz Typy obsługiwane przez serializator kontraktu danych). Schematy można następnie uwidocznić za pomocą dokumentu WSDL (Web Services Description Language) do użytku przez inne osoby, które muszą współpracować z usługą.
Z drugiej strony, jeśli tworzysz usługę sieci Web, która musi współdziałać z istniejącą usługą sieci Web, użyj polecenia XsdDataContractImporter , aby przekształcić schematy XML i utworzyć typy CLR reprezentujące dane w wybranym języku programowania.
Obiekt XsdDataContractExporter generuje XmlSchemaSet obiekt zawierający kolekcję schematów. Uzyskaj dostęp do zestawu schematów za pośrednictwem Schemas() właściwości .
Uwaga
Aby szybko wygenerować pliki definicji schematu XML (XSD), z których mogą korzystać inne usługi sieci Web, użyj polecenia XsdDataContractExporter.
Eksportowanie schematów do zestawu XmlSchemaSet
Aby utworzyć wystąpienie XmlSchemaSet klasy zawierającej pliki schematu XML, należy pamiętać o następujących kwestiach.
Zestaw eksportowanych typów jest rejestrowany jako wewnętrzny zestaw kontraktów danych. W związku z tym można wywołać metodę CanExport wiele razy, aby dodać nowe typy do zestawu schematów bez obniżenia wydajności, ponieważ tylko nowe typy zostaną dodane do zestawu. Export Podczas operacji istniejące schematy są porównywane z dodanymi nowymi schematami. Jeśli wystąpią konflikty, zostanie zgłoszony wyjątek. Konflikt jest zwykle wykrywany, jeśli dwa typy o tej samej nazwie kontraktu danych, ale różne kontrakty (różne elementy członkowskie) są eksportowane przez to samo XsdDataContractExporter wystąpienie.
Korzystanie z eksportera
Zalecanym sposobem korzystania z tej klasy jest następująca: