none
xsd.exe игнорирует schemaLocation при генерации класса на основе xsd RRS feed

  • Вопрос

  • Здравствуйте. Подскажите пожалуйста как сделать класс на основе xsd схемы. Я пытаюсь испольсовать утилиту xsd.exe но у нее оказывается есть баг . Вот тут он написан http://msdn.microsoft.com/en-us/library/ew6ts9yw.aspx

    и я не могу понять откуда они там взяли

    importedAttribute.xsd я так понял что они тоже сгенерировали его из xml но как ?

    29 октября 2014 г. 11:48

Ответы

  • Сделал. Оказывается visual studio 2012 сама не правильно генерирует схему xsd точнее она создает только один файл. А если генерировать схему через утилиту xsd.exe то тогда генерируются 2 файла со схемами , и тогда все норм создается но нужно утилите 2 этих файла скармливать . В итоге получается команда


    G:\>xsd 1.xsd 1_app1.xsd /classes /language:CS


    • Помечено в качестве ответа Timur2008 30 октября 2014 г. 4:08
    • Изменено Timur2008 30 октября 2014 г. 4:08
    30 октября 2014 г. 4:07

Все ответы

  • Судя по написанном в той ссылке, нужно просто передать утилите xsd.exe все схемы в виде параметров командной строки.

    В примере importedAttribute.xsd и attributeRef.xsd - это файл схемы и файл, импортируемый в schemaLocation. Вместо них подставьте свои названия файлов схем.

    29 октября 2014 г. 12:08
  • Подскажите пожалуйста что из себя представляет файл импортируемый в schemaLocation. Как исходную схему из xml получили я понял. Я загрузил в студию xml и там есть пункт создать по xml  xsd схему и все, а вот второй то файл xsd откуда?
    29 октября 2014 г. 16:18
  • Второй файл написан вручную или сгенерирован из другого xml.

    Если у вас его нет, то не стоит волноваться. В таком случае не надо дополнительно ничего указывать при вызове xsd.exe.

    29 октября 2014 г. 17:43
  • в том то и проблема что тогда у меня ошибка выбрасывается якобы нет какогото там тега ,сейчас не могу сказать т.к. не на работе. Вообщем вспплывает таже проблема что и в той теме.
    • Изменено Timur2008 29 октября 2014 г. 18:06
    29 октября 2014 г. 18:03
  • Сделал. Оказывается visual studio 2012 сама не правильно генерирует схему xsd точнее она создает только один файл. А если генерировать схему через утилиту xsd.exe то тогда генерируются 2 файла со схемами , и тогда все норм создается но нужно утилите 2 этих файла скармливать . В итоге получается команда


    G:\>xsd 1.xsd 1_app1.xsd /classes /language:CS


    • Помечено в качестве ответа Timur2008 30 октября 2014 г. 4:08
    • Изменено Timur2008 30 октября 2014 г. 4:08
    30 октября 2014 г. 4:07