Общие XSD - как использовать пользовательские инструменты, если 2 XSD используют XSD других типов - PullRequest
0 голосов
/ 09 ноября 2011

Я использую 3 XSD, для которых я хотел бы создать код в IDE:

  1. XSD1 - это общие типы данных
  2. XSD2 + XSD3 используют XSD1 (и, конечно, расширяют ...)

Я хочу, чтобы для них были сгенерированы классы, и из-за общего XSD я не смог использовать общий пользовательский инструмент, поскольку они генерируют ошибки отсутствующих типов или двойных типов (неоднозначность).

Есть ли способ достичь этого?

Ответы [ 2 ]

0 голосов
/ 09 ноября 2011

Я предполагаю, что с помощью пользовательского инструмента в Visual Studio вы обращаетесь к функции, доступной через окно инструмента Свойства ;чтобы процитировать контекстную справку, это означает «инструмент, который преобразует файл во время разработки и помещает результат этого преобразования в другой файл [...]».

Ваш вопрос может быть связан с этот пост .

То, что я хотел бы сделать, чтобы обойти ваши проблемы, - это создать своего рода «прокладку» для ваших файлов XML Schema;в основном, создайте пустой файл XML Schema, добавьте два оператора import, указывающие на схемы 2 и 3 (в вашем случае - на верхний уровень), и укажите этот файл в вашем пользовательском инструменте (вместо тех, которые вы используете прямо сейчас).Таким образом, пользовательский инструмент не доставит вам никаких проблем, поскольку он будет рассматривать ваши файлы как набор.

0 голосов
/ 09 ноября 2011

Если вы используете xsd.exe в командной строке Visual Studio, вы просто включаете все файлы схемы в один и тот же запрос.Затем xsd.exe разрешит распространенные типы и обеспечит отсутствие дублирования.

xsd /c schema1.xsd schema2.xsd schema3.xsd
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...