РЕДАКТИРОВАТЬ:
Чтобы ответить на обновленный вопрос, то не похоже, что Xsd2Code был разработан для обработки более одного файла .xsd одновременно.
Я получаю это от:
- Синтаксис командной строки
Xsd2Code.exe <XSD File> [Namespace] [Output file name] [Options]
- Быстрый просмотр исходного кода (загрузите сборку 88331 с http://xsd2code.codeplex.com/SourceControl/list/changesets и посмотрите на
Trunk\Xsd2Code.Console\EntryPoint.cs
.
Паскаль Кабанель, кажется, довольно активен на сайте CodePlex Xsd2Code. Вы можете связаться с ним для однозначного ответа:
http://www.codeplex.com/site/users/view/pcabanel
- Я оставлю свое пред. ответ ниже
Чтобы автоматически создать файлы поддержки класса xsd2Code, вы можете щелкнуть файл .xsd в обозревателе решений и в окне свойств записать / вставить Xsd2CodeCustomTool в свойство «Пользовательский инструмент».
Чтобы «видеть» типы данных из одного файла .xsd в другом, вы можете использовать оператор include
.
Вот пример с Person.xsd, содержащим определение данных и Employees.xsd include
-ing Person.xsd и использующий тип данных Person
.
- Обратите внимание, что, поскольку Employees.xsd уже включает Person.xsd, вам нужно только сгенерировать Xsd2Code для Employees.xsd.
Person.xsd
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="CommonNamespace"
xmlns="CommonNamespace"
>
<xs:complexType name="Person">
<xs:sequence>
<xs:element name="Name" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
Employees.xsd
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="CommonNamespace"
xmlns="CommonNamespace"
>
<xs:include schemaLocation="Person.xsd"/>
<xs:element name="Employees">
<xs:complexType>
<xs:sequence>
<xs:element name="Employee" type="Person" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>