MS Project XML-сериализация - PullRequest
       24

MS Project XML-сериализация

0 голосов
/ 11 февраля 2010

Я пытаюсь прочитать данные из файла MS Project XML. Я использовал XML Schema Tool для генерации набора строго типизированных классов на основе Microsoft Project 2007 XML Schema .

Однако я столкнулся с несколькими проблемами. Свойство xmlns корневого узла из XML, экспортированного из MS Project, не соответствует схеме XSD.

MS Project generates this XML:
<Project xmlns="http://schemas.microsoft.com/project">

Should be:
<Project xmlns="http://schemas.microsoft.com/project/2007">

Если я пытаюсь десериализовать с неверным xmlns, он выдает исключение:

<Project xmlns='http://schemas.microsoft.com/project'> was not expected.

Если я исправлю xmlns, он выдаст исключение:

Instance validation error: '0' is not a valid value for ProjectTaskFixedCostAccrual.

Таким образом, похоже, что либо утилита XML Schema неправильно сгенерировала классы, либо неверна XML-схема Microsoft Project 2007.

Мой вопрос: кто-нибудь сталкивался с такой ситуацией раньше? Есть ли лучшие альтернативы синтаксическому анализу MS Project XML (помимо взаимодействия)?

1 Ответ

0 голосов
/ 12 февраля 2010

Возможное решение ...

Данные, которые я пытался десериализовать, были сериализованы из другого компонента в том же приложении. Сгенерированный XML не установил элемент для каждой задачи. Я импортировал XML в MS Project и экспортировал его как XML. MS Project установил значение равным 0 для каждой задачи при экспорте. Однако действительные значения находятся в диапазоне 1-3.

Не уверен, почему MS Project установил бы значение по умолчанию на что-то вне диапазона, но решение было исправить компонент, который генерирует выходной XML.

Я все еще не уверен, почему он генерирует XML с неправильным атрибутом xmlns.

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