具有可序列化构造函数的可序列化类

本文关键字:序列化 构造函数 | 更新日期: 2023-09-27 17:53:20

是否可能声明类[Serializable],但添加带(SerializationInfo information, StreamingContext context)签名的构造函数在反序列化时执行一些特定的任务?

具有可序列化构造函数的可序列化类

您可以继承ISerializable或只是添加一些自定义方法到您的类在序列化/反序列化期间调用。

这些方法用特殊的属性装饰,告诉序列化程序调用它们:

OnDeserializedAttribute

OnDeserializingAttribute

OnSerializedAttribute

OnSerializingAttribute

MSDN有一个关于如何使用这些属性的很好的教程(我不需要在这里复制):

https://msdn.microsoft.com/en-us/library/ty01x675%28v=vs.110%29.aspx并查看为每个属性提供的链接,以实现每个属性的方法。