XSD.exe - Klassen aus mehreren XSD-Dateien generieren

26/12/2007 - 21:09 von Marco v. Frieling | Report spam
Hallo,

ich habe ein XML Schema aus dem ich C# Klassen generieren muss. Das
funktioniert ja an sich sehr gut, nur ist der Anbieter des Schemata
auf die glorreiche Idee gekommen, sein Schema in zwei Daten
(allgem_000007.xsd und lsta_200801.xsd) aufzuteilen, wobei die Typen
aus beiden Dateien zum gleichen XML Namespace gehören. Rufe ich
xsd.exe nur mit der last_200801.xsd auf, bekomme ich einen Fehler,
dass ein Typ (Simple Type) nicht definiert ist. Dieser ist in der
allg_000007.xsd definiert, wenn ich xsd.exe mit beiden Dateien
aufrufe, làuft es zwar durch, aber es gibt keine C# Entsprechung für
sàmtlich Typen (alles Simple Types) aus der allg_000007.xsd? Hat
xsd.exe da einfach was ignoriert oder generiert es nicht für alle XML
Typen Entsprechungen, insbes. wenn es sich um Einschrànkungen von
Strings über einen regulàren Ausdruck oder von int auf einen
Wertebereich handelt?

BTW: Anbieter des Schemata ist die Oberfinanzdirektion München
(ELSTER) :-( :-(

Vielen Dank und lg,
Marco
 

Lesen sie die antworten

#1 Frank Dzaebel
26/12/2007 - 22:15 | Warnen spam
Hallo Marco,

ich habe ein XML Schema aus dem ich C# Klassen
generieren muss. Das funktioniert ja an sich sehr
gut, nur ist der Anbieter des Schemata auf die
glorreiche Idee gekommen, sein Schema in zwei Daten
(allgem_000007.xsd und lsta_200801.xsd) aufzuteilen,



hmm, kannst Du mir die XSDs mal mailen?
Zusammen mit dem Befehl den Du anwendest,
die beiden XSD in Klassen umzuwandeln.
Ich mache das (je nach IDE) oft durch simples
Drag & Drop in die Projektmappe, wodurch
(ggf. ->DataSet) automatisch Klassen erstellt werden.

Wenn Du z.B. über /d[ataset]
gehst ist es wiederum auch nicht verwunderlich,
dass nicht alles übernommen wird.
Hmm, /n[amespace]:namespace
wirst Du ja auch kennen ... aber ich
warte mal Deine Angaben ab.
Du solltest auch sagen, welche VS-Version
Du benutzt, da unter 3.5 wieder weitergehende
Möglichkeiten vorhanden sind (auch für XSD.exe).
(BTW. was ist mit Deiner ActiveX-Dll, so gemacht? )

[XML Schema Definition Tool (Xsd.exe)]
http://msdn2.microsoft.com/en-us/li...1kb0s.aspx


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen