2010-06-16 23 views
5

Próbuję wygenerować klasę od schematu XSD ale mogę otrzymać następujący komunikat o błędzie:Błąd przy generowaniu klasy z pliku schematu XSD

Ostrzeżenie: Nie można wygenerować klas ponieważ bez elementów najwyższego poziomu z typem złożonym zostały znalezione.

Mój plik xsd wygląda tak:

<?xml version="1.0" encoding="utf-8"?> 
<xs:schema id="MonitoringConfiguration" 
    targetNamespace="urn:MonitoringConfiguration-1.0" 
    elementFormDefault="qualified" 
    xmlns="urn:MonitoringConfiguration-1.0" 
    xmlns:xs="http://www.w3.org/2001/XMLSchema" 
> 

    <xs:complexType name="MonitoringConfiguration"> 
    <xs:sequence> 
     <xs:element name="Machine" type="Machine" minOccurs="0" /> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="Machine"> 
    <xs:sequence> 
     <xs:element name="Component" type="Component" maxOccurs="unbounded" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="Component"> 
    <xs:attribute name="Name" type="xs:string" use="required"/> 
    <xs:attribute name="Type" type="xs:string" use="optional"/> 
    </xs:complexType> 
</xs:schema> 

jestem generowania klasy z następującym wierszu poleceń:

xsd MonitoringConfiguration.xsd /languages:CS /Classes 

nocie już zdefiniowany element najwyższego poziomu z typ złożony (MonitoringConfiguration).

Co jest nie tak?

Dzięki

Odpowiedz

7

zdefiniowaniu najwyższego poziomu typu złożonego - ale nie najwyższego poziomu elementem.

Trzeba dodać:

<xs:element name="MonitoringConfigurationElement" 
      type="MonitoringConfiguration" /> 

i wtedy wszystko powinno być dobrze.

+0

Rzeczywiście działa! –

+0

Wskazówka nie pomogła w MS VS Express 2012 dla Windows 8. – Alexander

Powiązane problemy