Dataset, xml og xsd
HejJeg har et hovedbrud der driller.
*Jeg har oprettet et dataset fra et XSD skema vha. xds.exe - super fint det dur :-) *Jeg adderer data til mit fine dataset - også kanon - det dur :-) *Jeg skriver datasettet til xml ved WriteXml metoden - den skriver det dur - næsten... :-/
For der kommer et ekstra niveau på min genererede XML fil. Der er en rod node med datasættets navn der "omklamrer" min ellers så fine xml - øv :-(
Jeg har googlet rundt og set andre have problemet - det nærmeste jeg fandt på en løsning er beskrevet her :
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=344486&SiteID=1&pageid=0
men det har jeg også prøvet og det hjalp mig ikke. Er der nogen der kan fortælle mig hvad det er jeg lige skal tveake for at det kører ?
Min lille skrive kode version 1 hvor jeg benytter dataset direkte:
...
xmlWriter.Formatting = Formatting.Indented;
xmlWriter.WriteStartDocument();
broendRapportDataSet.WriteXml(xmlWriter,
XmlWriteMode.IgnoreSchema);
xmlWriter.WriteEndDocument();
Min let tilrettede skrivekode efter det jeg googlede - hvor jeg bruger XmlDataDocument :
XmlTextWriter xtw = new XmlTextWriter(xmlFilename, Encoding.UTF8);
xtw.Formatting = Formatting.Indented;
xddDataSet.WriteContentTo(xtw);
xtw.Close();
Mit output - BroendRapportGroup bør være roden - jeg vil ikke have noget <NewDataSet> snask:
<NewDataSet xmlns="http://www.danva.dk/xml/schemas/dandas/20080101">
<BroendRapportGroup>
<Referencesys>
<EnhedVinkel>grad</EnhedVinkel>
<KoordinatsysKode>4</KoordinatsysKode>
<KotesysKode>1</KotesysKode>
</Referencesys>
<BroendRapport Rapportnr="fsdfds">
<BroendTilstand>
<Knudenavn>fdsfds</Knudenavn>
<DatoOpdateret>2008-12-03T16:05:10.4081854+01:00</
DatoOpdateret>
<DatoOprettet>2008-12-03T16:05:10.4081854+01:00</DatoOprettet>
</BroendTilstand>
</BroendRapport>
</BroendRapportGroup>
</NewDataSet>
Øv - jeg gør et eller andet galt - hvad er det jeg misforstår ?