2009-01-06 32 views
1

我有一個泛型類型:XmlSerializer的,sgen.exe和泛型

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

回答

1

是的,您可以直接使用IXmlSerializable實現自定義類。
欲瞭解更多信息,請參閱this文章。

+0

我的觀點是我想避免使用IXmlSerializable定製序列化。 (見最後一條問題。) – 2009-01-09 08:52:57

0

如果您使用的是泛型類型,則無法生成預先完成的XmlSerializer。