作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想知道是否有任何方法可以将包含泛型列表的类序列化为 xml?它看起来像这样:
class Program
{
static void Main(string[] args)
{
var o = new ContainerClass();
o.Values = new List<SomeClass> {new SomeClass<int>(), new SomeClass<long>()};
XmlSerializer xs = new XmlSerializer(typeof(ContainerClass));
MemoryStream buffer = new MemoryStream();
using (TextWriter writer = new StreamWriter(buffer))
{
xs.Serialize(writer, o); // InvalidOperationException here
}
var xml = Encoding.UTF8.GetString(buffer.ToArray());
}
}
public class ContainerClass
{
public List<SomeClass> Values { get; set; }
}
public class SomeClass
{
}
public class SomeClass<T> : SomeClass
{
}
我知道有一种方法可以将额外的类型传递给序列化程序,但现在还没有办法传递可能出现的所有组合。
我已经尝试以各种方式实现 IXmlSerializable 但没有成功。
知道如何处理吗?
如果有任何可以处理的外部库,我也对外部库开放。
最佳答案
我找到了 YAXLib哪个完成了工作。
关于C#:包含泛型列表的类的 XML 序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8011368/
我是一名优秀的程序员,十分优秀!