ISerializable 接口仅提供序列化对象的方法。反序列化进程由构造函数管理。
问题是,构造函数无法返回实例,因为构造函数会创建一个新实例。
在我的实现中,有几个属性对应于在其他地方实例化和维护的单例。
我需要反序列化过程来获取该实例并分配给属性,而不是创建新实例。
构造函数方法不适合此。
在Java中,你会调用ReadResolve()方法,是否有C#等价物?
你需要使保存对单例引用的类实现 IObjectReference。
看看 http://msdn.microsoft.com/en-us/library/system.runtime.serialization.iobjectreference.aspx