【发布时间】:2010-05-26 08:43:05
【问题描述】:
我有以下对象:
public class MyClass
{
public int Id { get; set;}
public string Name { get; set; }
}
我想将其序列化为以下 xml 字符串:
<MyClass>
<Id>1</Id>
<Name>My Name</Name>
</MyClass>
不幸的是,当我使用 XMLSerializer 时,我得到一个看起来像这样的字符串:
<?xml version="1.0" encoding="utf-8"?>
<MyClass xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Id>1</Id>
<Name>My Name</Name>
</MyClass>
我不希望 MyClass 成为文档的根元素,而是我最终希望将字符串与其他类似的序列化对象添加到更大的 xml 文档中。
即最终我会得到一个如下所示的 xml 字符串:
<Classes>
<MyClass>
<Id>1</Id>
<Name>My Name</Name>
</MyClass>
<MyClass>
<Id>1</Id>
<Name>My Name</Name>
</MyClass>
</Classes>"
我的第一个想法是创建一个类如下:
public class Classes
{
public List<MyClass> MyClasses { get; set; }
}
...但这只是添加了一个名为 MyClasses 的附加节点来包装 MyClass....的列表。
我的直觉是,我以错误的方式处理这个问题,并且我缺乏创建 xml 文件的经验并没有帮助我指出 .NET 框架的某些部分或其他一些简化这一点的库。
【问题讨论】:
标签: c# xml xml-serialization