Jaxb-эквивалент в C # - PullRequest
       20

Jaxb-эквивалент в C #

16 голосов
/ 19 апреля 2009

Используя JAXB в Java, легко создать из файла схемы XML набор классов Java, в которые можно десериализовать XML, соответствующий этой схеме.

Есть ли C # эквивалент JAXB? Я знаю, что Linq может сериализовать и десериализовать классы в / из XML-файлов. Но как я могу сгенерировать классы C # из файла схемы xml и затем использовать эти классы с linq?

Ответы [ 3 ]

16 голосов
/ 19 апреля 2009

Если вы используете Visual Studio, попробуйте Инструмент определения схемы XML . Он берет определения вашей схемы и создает классы C # - или может пойти другим путем и создать определения схемы из классов. Он также имеет ряд других преобразований, связанных с XML.

4 голосов
/ 21 мая 2009

Существует лучший инструмент от Microsoft под названием XsdObjectGen , генератор XSD объектного кода. Это как xsd.exe, но лучше. Также бесплатно, он не является частью .NET SDK, но является отдельной загрузкой.

Также см. Вопрос SO: XSDObjectGen vs Xsd.exe

1 голос
/ 22 октября 2009

Изучите использование DataSet. Это немного отличается от использования "Java Beans". Весь документ XML обрабатывается иерархическим набором таблиц в одном классе. Хорошая часть заключается в том, что теория инкапсуляции для ООП фактически применяется. Ничего себе, Microsoft поняла что-то правильное, что всунул Sun.

В любом случае. Вы также можете посмотреть типизированные наборы данных, если хотите сделать вещи более интересными. Я использовал это в крупных проектах с большим успехом.

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