1

我有一个通用类型:

public class Packet<T> where T : IContent
{
    private int id;
    public int Id { get { return this.id; } }

    private T content;
    public T Content { get { return this.content; } }
}

我想从/到 XML 反序列化/序列化这种类型的实例。IContent是这样定义的:

public interface IContent
{
    XmlSerializer Serializer{get;}
}

基本上,我希望Packet使用其内容提供的序列化程序来序列化和反序列化其内容成员。这个序列化器实际上是一个由 sgen.exe 生成的预编译 xml 序列化器的实例。

是否有可能不Packet<T>实施IXmlSerializable

4

2 回答 2

1

是的,您可以使用 IXmlSerializable 直接实现自定义类。
有关详细信息,请参阅本文

于 2009-01-07T10:56:27.697 回答
0

如果您使用的是通用类型,则它无法生成预先完成的 XmlSerializer。

于 2009-08-25T10:21:07.357 回答