【发布时间】:2012-09-04 12:15:46
【问题描述】:
我想在一个类中反序列化以下xml(具有特定属性):
<test1>
<field1>0</field1>
<field2>1</field2>
<field3>2</field3>
</test1>
<test2>
<field4>0</field4>
<field5>1</field5>
<field6>2</field6>
</test2>
<test3>
<field7>0</field7>
<field8>1</field8>
<field9>2</field9>
</test3>
我编写的类如下:
[Serializable]
public class Result
{
[XmlElement("test1")]
public Test1 T1{ get; set; }
[XmlElement("test2")]
public Test2 T2 { get; set; }
[XmlElement("test3")]
public Test3 T3 { get; set; }
}
[Serializable]
public class Test1
{
[XmlElement("Field1")]
public Test1 Field1{ get; set; }
[XmlElement("Field2")]
public Test2 Field2{ get; set; }
[XmlElement("Field3")]
public Test3 Field3 { get; set; }
}
....
不幸的是,我在反序列化时收到以下错误:
输入 xmlns='' 不是预期的。
感谢您的帮助。
亲切的问候,亲
【问题讨论】:
-
您的 xml 没有 root 元素
-
是的,我知道 - 这就是挑战 ;-)
-
您的 xml 必须有一个名为
Result的根元素 -
如果您从无法控制的服务中接收 XML,为什么不简单地将 XML 读取到流中,然后预先添加和附加
节点,然后将 XML 反序列化为字符串?跨度> -
@pro 挑战?!!!您的 xml 无效,因此您无法对其进行反序列化
标签: c# .net xml serialization