【发布时间】:2016-10-26 05:47:14
【问题描述】:
我一直在尝试序列化一个继承自 List<int> 并具有提供额外信息的字段的类(见下文)。
最初,我一直在使用XmlSerializer,但在那里我也遇到了问题。
根据this post 的设计,XmlSerializer 不会序列化字段,但DataContractSerializer 应该可以工作。
任何建议将不胜感激!
[CollectionDataContract]
public class Group : List<int>
{
[DataMember]
public string Key { get; set; }
}
static void Main()
{
Group test = new Group { Key = "Test key" };
test.Add(60);
DataContractSerializer serializer = new DataContractSerializer(typeof(Group));
MemoryStream stream = new MemoryStream();
serializer.WriteObject(stream, test);
stream.Position = 0;
test = serializer.ReadObject(stream) as Group;
Console.WriteLine("{0}: {1}", test.Key ?? "No luck", test[0]);
}
谢谢, 诺亚
【问题讨论】:
标签: c# serialization collections subclass datacontractserializer