jam*_*iet 2 c# xml-serialization
我正在编写一个Generic类,它尝试将Type T的对象序列化为XML.不幸的是(我相信你知道)并非所有对象都可以成功地序列化为XML,因此我希望能够编写一个约束来指定T只能是一个XML Serializable类.这是可能吗?
很确定这个问题的答案是"不",但想想无论如何我都会问,以防我错过了什么.
唯一可用的限制是:
class
/struct
new()
BaseType
/Interface
其中,只有两个有点有趣的是:new()
(因为XmlSerializer
需要一个公共的无参数构造函数)和:Interface
(因为IXmlSerializable
是其中一个选项); 然而:
IXmlSerializable
不是必需的,因此不适用所以简而言之:不,这不是你可以通过通用约束来强制执行的