ISerialized - 序列化单例

use*_*011 5 c# serialization iserializable

ISerialized接口仅提供序列化对象的方法。反序列化过程由构造函数管理。

问题是,该构造函数无法返回实例,因为构造函数创建了一个新实例。

在我的实现中,有几个与在其他地方实例化和维护的单例相对应的属性。

我需要反序列化过程来获取该实例并分配给该属性,而不是创建一个新实例。

构造函数方法不适合这种情况。

在 Java 中,您将调用 ReadResolve() 方法,C# 中是否有等效的方法?

Osi*_*ris 4

您需要使保存对单例的引用的类实现 IObjectReference。

看看http://msdn.microsoft.com/en-us/library/system.runtime.serialization.iobjectreference.aspx