Раньше я преобразовывал много xsd в C#, но сегодня я столкнулся с новым сообщением об ошибке: "невозможно создать классы, поскольку элементы верхнего уровня со сложным типом не найдены".
У меня эта проблема на 2 файлах. Я прочитал много постов об этом, и они помогли мне решить как минимум 1 из 2 проблем, которые у меня есть.
Файл, который я исправил, был:
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:mg="urn:crif-messagegateway:2006-08-23" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:crif-messagegateway:2006-08-23" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="MGRequest" type="xs:string"/>
<xs:element name="MGResponse" type="xs:string"/>
</xs:schema>
и я отредактировал его на:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:mg="urn:crif-messagegateway:2006-08-23" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:crif-messagegateway:2006-08-23" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="MGRequest">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string" />
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="MGResponse">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string" />
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:schema>
Теперь я также пытаюсь преобразовать следующий файл xsd (очень похожий на предыдущий исправленный), но xsd.exe выдает ошибку «невозможно создать классы, поскольку элементы верхнего уровня со сложным типом не найдены». . В чем проблема? Каковы различия между рабочим файлом выше?
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:mg="urn:crif-messagegateway:2006-08-23" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:crif-messagegateway:2006-08-23" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="MGRequest">
<xs:complexType>
<xs:sequence>
<xs:any namespace="##other"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MGResponse">
<xs:complexType>
<xs:sequence>
<xs:any namespace="##other"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Я пробовал также с xsd2code, но я получаю просто пустой класс.