C# 如何允许类仅在可序列化时实现接口?
假设我有一个名为“XMLControl”的接口,我需要实现它的每个类也实现C# 如何允许类仅在可序列化时实现接口?,c#,.net,C#,.net,假设我有一个名为“XMLControl”的接口,我需要实现它的每个类也实现ISerializable。是否有任何面向对象的方法来强制实现这一点 也可以将XMLControl作为一个抽象类,尽管不太可取。最好的方法是什么 我想在XMLControl中放置一个静态方法,如下所示: 静态void LoadFromXML(SerializableClass) 但是寻找更好的想法 谢谢。您可以让XMLControl接口实现ISerializable接口: public interface IXmlCont
ISerializable
。是否有任何面向对象的方法来强制实现这一点
也可以将XMLControl作为一个抽象类,尽管不太可取。最好的方法是什么
我想在XMLControl中放置一个静态方法,如下所示:
静态void LoadFromXML(SerializableClass)代码>
但是寻找更好的想法
谢谢。您可以让XMLControl
接口实现ISerializable
接口:
public interface IXmlControl: ISerializable
{
...
}
通过这种方式,您将强制IXmlControl
接口的所有实现者也实现ISerializable
还请注意,标准的.NET命名约定规定接口名称应以大写字母I
开头。因此,这个接口最好被称为IXmlControl
,尽管由于推荐的命名约定,我建议使用“IXmlControl”。就我个人而言,我会选择IXmlControl
。