Я сгенерировал классы с этим xsd https://services.intuit.com/sb/dataservices/xsd/v2/finance/Finance.xsd, используя xsd.exe
xsd.exe Finance.xsd / c / language: cpp /n:Intuit.Sb.Cdm
Когда я компилирую, я получаю такие ошибки, как:
в сравнении с 2010 г.
Ошибка 1, ошибка C2226: синтаксическая ошибка: неожиданный тип 'Intuit :: Sb :: Cdm :: SalesTaxGroup
в сравнении с 2008 г.
Ошибка 1, ошибка C2144: синтаксическая ошибка: «Intuit :: Sb :: Cdm :: Payment» должен предшествовать «}»
Строки, на которые жалуется компилятор, находятся вокруг определений перечисления с атрибутами, такими как ..
[System::Xml::Serialization::XmlEnumAttribute(L"Other Charge")]
OtherCharge,
Я посмотрел атрибут на msdn, и это правильный синтаксис. Ошибка возникает после второго или третьего использования этого атрибута в перечислении.
Существуют ли обходные пути для этого, кроме удаления атрибута или генерации кода C #?