c# - Troubles wtih comments in XmlSerialzier -


i try load xml file code:

xmlserializer xmlserializer = new xmlserializer(typeof(myobject)); streamreader reader = new streamreader(filename); object myobject = xmlserializer.deserialize(reader); 

when file contains comment this:

<?xml version="1.0" encoding="utf-8"?> <!-- edited xmlspy v2007 sp2  --> <route>     <!--file created on 26-nov-2010 12:36:42-->     <file_content>1     <!--0 = type1 ; 1 = type2-->     </file_content> </route> 

xmlserializer returns error like

unexpected node type comment. readelementstring method can called on elements simple or empty content

when remove comments in file it's work fine.

i don´t know problem, ideas?

as can see comments not allowed in serialized xml, should pose no problem you. might not control source xml control deserialization process, remove comments prior deserialization:

    xmlserializer xmlserializer = new xmlserializer(typeof(myobject));      // load document     xmldocument doc = new xmldocument();     doc.load(filename);      // remove comments     xmlnodelist l = doc.selectnodes("//comment()");     foreach (xmlnode node in l) node.parentnode.removechild(node);      // store memory stream , rewind     memorystream ms = new memorystream();     doc.save(ms);     ms.seek(0, seekorigin.begin);      // deserialize using clean xml     xmlserializer.deserialize(xmlreader.create(ms)); 

if objects huge , deserialize huge number of them in short span, howler, can investigate out-of-framework fast xpath readers.


Comments

Popular posts from this blog

javascript - Enclosure Memory Copies -

php - Replacing tags in braces, even nested tags, with regex -