List<int> testList = new List<int>();
testList.Add(1);
testList.Add(2);
testList.Add(3);
XmlSerializer xs = new XmlSerializer(typeof(List<int>));
Run Code Online (Sandbox Code Playgroud)
此代码(部分)创建默认根节点<ArrayOfInts>和每个节点:<int>.
是否可以设置不同的名称,而无需创建包装类?
谢谢
您可以将XmlArray和XMLArrayItem属性一起使用到变量声明的顶部.然后XmlSerializer在开始序列化定义的对象时考虑这些属性.让我举个例子说明你的代码;
您应该使用这些属性定义通用列表.
public class democlass
{
[XmlArray("testList")]
[XmlArrayItem("customitem")]
public List<int> testList {get;set;}
}
Run Code Online (Sandbox Code Playgroud)
然后,您可以向列表中添加值
static void Main(string[] args)
{
democlass d = new democlass();
d.testList = new List<int>();
d.testList.Add(1);
d.testList.Add(2);
d.testList.Add(3);
Run Code Online (Sandbox Code Playgroud)
并序列化它.你会看到这个输出.
<democlass>
<testList>
<customitem>1</customitem>
<customitem>2</customitem>
<customitem>3</customitem>
</testList>
</democlass>
Run Code Online (Sandbox Code Playgroud)
而已.
我希望这会有所帮助.
注意:神奇的是inisde XmlArray和XmlArrayItem属性,你可以在MSDN上找到更详细的信息.
问候
| 归档时间: |
|
| 查看次数: |
5937 次 |
| 最近记录: |