读书人

xsi:type 属性反序列化,该怎么解决

发布时间: 2012-05-29 12:16:00 作者: rapoo

xsi:type 属性反序列化
序列化之后产生下列 XML:

XML code
<Conditions xmlns="xxxx"><Condition xmlns:q1="xxxx" xsi:type="q1:QueryConditionBuilder"><q1:ValueObject xsi:type="ArrayOfSConditionValue"><SConditionValue xmlns=""><Value xsi:type="xsd:dateTime">2011-03-01</Value></SConditionValue><SConditionValue xmlns=""><Value xsi:type="xsd:dateTime">2011-04-01</Value></SConditionValue></q1:ValueObject></Condition></Conditions>


但是在反序列化的时候 "ValueObject" 却变成了 "System.Xml.XmlNode[0x00000003]",其中3个元素分别是:

1. {Attribute, Name="xsi:type", Value="ArrayOfSConditionValue"}
2. {Element, Name="SConditionValue"}
3. {Element, Name="SConditionValue"}

"ValueObject" 中的 "SetValue(value)" 要根据所赋类型才能正确序列化,结果得到的却是 XmlNode...


"ArrayOfSConditionValue" 是被自动修改后的名称,程序中原始的是"SConditionValueArray"

any ideas?


Thanks,


[解决办法]
你反序列化的代码怎么写的?是不是写错了

绿色辅助工具——《Csdn收音机》帮你轻松掌握Csdn最新动向!

读书人网 >C#

热点推荐