我有一個關於WCF和反序列化XML的問題。WCF反序列化
比方說,我有一個XSD,指定一些屬性爲minoccurs ='0'。
<xs:element name=TestData>
<xs:complexType>
<xs:sequence>
<xs:element minOccurs=0 name="stoppageHours>
<xs:simpleType>
<xs:restriction base="xs:int">
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element minOccurs=0 name="stoppageDate>
<xs:simpleType>
<xs:restriction base="xs:dateTime">
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:sequence>
<xs:complexType>
</xs:element>
如果我沒有價值的一個屬性,我可以省略元素標記的XML即
<TestData>
<StoppageHours>26</StoppageHours>
...omitted stoppageDate...
</TestData>
但是,鑑於本人產生從XSD到.NET C#類,當我發佈XML到我的Web服務時,它抱怨反序列化失敗了,因爲它期望元素?
如何強制反序列化過程忽略丟失的XML元素並將相關類的記憶器設置爲NULL值?我已經嘗試將類成員設置爲系統可空類型,但爲了讓這個工作,我必須將XML元素作爲xsi:nillable傳遞?我真正想要做的就是簡單地省略XML標籤。
謝謝。
那些不是屬性 - 你定義的XML **元素**有'minOccurs = 0' – 2012-08-06 14:47:47
類似的問題:http://stackoverflow.com/questions/8709424/do-xml-parsers-tell-在xsinil-true-and-omitted-elements之間的區別 – JTMon 2012-08-06 15:02:58