namespace TBL.CSharp.Serialization { /// /// 可使用代理序列化的对象接口 /// 此类对象可以使用另一个可序列化对象来代理自身的序列化 /// public interface IProxiedSerializable { /// /// 代理序列化 /// /// 可参与序列化的此对象代理 object ProxiedSerialize(); /// /// 代理反序列化 /// /// 可以用作反序列化的代理对象 void ProxiedDeserialize(object proxy); /// /// 当此对象反序列化时,是否应该使用构造方法初始化 /// 如果为否,反序列化时创建的对象将不会使用构造方法 /// bool IsShouldInitializeWhenDeserialize(); } }