XmlDocument.Save(string path)
Hej eksperter!Betragt flg. kode:
System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
doc.LoadXml("<TestDoc><TestElement></TestElement></TestDoc>");
doc.Save("save.xml");
System.IO.File.WriteAllText("textfile.xml", doc.OuterXml);
Jeg udskriver xml'en på to måder, og de to måder har nogle betydelige forskelle:
save.xml
--------------------------------------------------
<TestDoc>
<TestElement>
</TestElement>
</TestDoc>
--------------------------------------------------
textfile.xml
--------------------------------------------------
<TestDoc><TestElement></TestElement></TestDoc>
--------------------------------------------------
Jeg oplevede dette som et problem i et scenarie hvor jeg i en xml schema validering tjekker på om nogle elementer er tomme. Hvilket ovenstående element 'TestElement' ikker er efter persistering med Save metoden. Save manipulerer med andre ord indholdet af xml elementerne, da den blandt andet indsætter linieskift inden i TestElelement. I mit hoved er dette en bug!
200 points til hvem end der kan argumentere imod!