C# .NET序列化动态转换
我有一个节点,它在一个xml文件中包含分隔值,我正在将该文件反序列化(System.xml.Serialization)到一个类 这是XML数据元素节点的示例:C# .NET序列化动态转换,c#,xml,xml-serialization,C#,Xml,Xml Serialization,我有一个节点,它在一个xml文件中包含分隔值,我正在将该文件反序列化(System.xml.Serialization)到一个类 这是XML数据元素节点的示例: <Data>1,2,3,4,8,11<Data> 1,2,3,4,8,11 是否可以在反序列化过程中拆分整数数据,以便将数据字符串转换为如下属性列表: List<int> Data {get; set;} 列出数据{get;set;} 我建议使用LINQ to XML进行序列化,但是如果您使用S
<Data>1,2,3,4,8,11<Data>
1,2,3,4,8,11
是否可以在反序列化过程中拆分整数数据,以便将数据字符串转换为如下属性列表:
List<int> Data {get; set;}
列出数据{get;set;}
我建议使用LINQ to XML进行序列化,但是如果您使用System.XML.serialization
,您可以通过使用字符串
属性的自定义setter来执行此操作,该属性拆分字符串并填充列表
属性
List listData {get; set;}
String Data
{
get
{
return String.Empty;
}
set
{
listData.AddRange(value.Split(','));
}
}
在穆尼姆编辑后
在Minim添加了通用的
之后,setter应该是这样的:
set
{
string[] temp = value.Split(',');
foreach (string s in temp)
listData.Add(Convert.ToInt32(s));
}
为什么要使用xml存储逗号分隔的值?你不觉得这是两个世界中最糟糕的吗?