【发布时间】:2011-03-08 23:54:27
【问题描述】:
我有一个班级 Foo(假设正确的 using 指令)
namespace Example
{
[XmlRoot("foo")]
class Foo
{
public Foo() {}
[XmlElement("name")]
public string Name;
}
}
XmlSerializer 可以像这样处理 XML 以生成 Foo 类型的对象
<foo>
<name>BOSS</name>
</foo>
要让 XmlSerializer 处理这种形式的 XML,我能做的最少工作是多少,
<foos>
<foo>
<name>BOSS</name>
</foo>
<foo>
<name>NOT A BOSS</name>
</foo>
</foos>
并生成一个Foo 对象数组?
编辑:
我是如何为单个Foo 做的:
var xr = new XmlTextReader("foo.xml");
var xs = new XmlSerializer(typeof(Foo));
var a = (Foo) xs.Deserialize(xr);
Foo[] 的潜在示例
var xr = new XmlTextReader("foos.xml");
var xs = new XmlSerializer(typeof(Foo[]));
var a = (Foo[]) xs.Deserialize(xr);
【问题讨论】:
-
你写过任何使用 XmlSerializer 的代码吗?
-
@RQDQ 添加了一些示例,说明我如何为单个项目执行此操作,以及我如何认为它们可能会发生在一组项目中。
标签: c# xml serialization xml-serialization