【问题标题】:Serializable class with ISerializable constructor具有 ISerializable 构造函数的可序列化类
【发布时间】:2015-08-19 14:33:40
【问题描述】:

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

【问题讨论】:

    标签: c# serialization deserialization serializable


    【解决方案1】:

    您可以继承ISerializable,也可以在您的类中添加几个在序列化/反序列化期间调用的自定义方法。

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

    OnDeserializedAttribute

    OnDeserializingAttribute

    OnSerializedAttribute

    OnSerializingAttribute

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-08
      • 2013-07-29
      • 2022-09-28
      • 1970-01-01
      • 2013-04-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多