Как включить документацию xsd: в класс C #, созданный с помощью XSD.exe? - PullRequest
8 голосов
/ 06 февраля 2010

Я использую xsd.exe для создания класса C # из коллекции файлов xsd. Файл xsd использует тег <xsd:documentation> для включения полезных описаний. Пример:

<xsd:complexType name="AddressType">
    <xsd:annotation>
        <xsd:documentation>A formatted or free form address and its intended use.</xsd:documentation>
    </xsd:annotation>

К сожалению, все это потеряно в сгенерированном классе C #. Интересно, что к каждому классу прикреплен пустой тег документации remarks .

/// <remarks/>

Как включить эту документацию в сгенерированный класс C # (в тегах или в документации)?

Ответы [ 2 ]

2 голосов
/ 06 февраля 2010

xsd.exe основан на Codedom.

Вы можете разобрать xsd.exe, добавить туда функциональность и перекомпилировать. Код достаточно прост.

Я изменил его, чтобы пропустить некоторые пространства имен из xsd при генерации кода. [В противном случае, если я включу common.xsd в 2 других xsds, класс генерируется дважды.]

Конечно, у меня был доступ к самому источнику [я был разработчиком в Microsoft], но процесс должен быть простым и с дизассемблированным кодом.

1 голос
/ 06 февраля 2010

Извините, нет способа сделать это.

...