也許我沒有正確地做到這一點。但是我正在使用MusicXML以及XSD.exe來針對DTD生成C#類。對於c#code gen使用XSD.exe,忽略XML中的空節點?
按照documentation,具有sample xml file以來,<NOTE>
元件包含一個空<CHORD>
元件,如果<NOTE>
是<CHORD>
的一部分。生成的代碼如下所示:
[System.Xml.Serialization.XmlElementAttribute("chord", typeof(empty))]
當我反序列化XML到C#對象,它的偉大工程,但<CHORD>
似乎消失了。 .NET是否忽略此示例XML中的CHORD
元素?
<note>
<chord/>
<pitch>
<step>E</step>
<alter>-1</alter>
<octave>4</octave>
</pitch>
<duration>1</duration>
</note>
謝謝!
你是什麼意思「''似乎消失了」的反序列化? –
NotMe
2013-03-21 23:14:37
note c#對象沒有與和絃相關的任何東西,它並沒有通過反序列化。 – kevin 2013-03-21 23:26:20
你的意思是,當它是*序列化*輸出沒有空的和絃節點?反序列化正在接受輸入並創建一個對象。序列化是相反的方法。 – NotMe 2013-03-21 23:33:19