加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 序列化事件

发布时间:2020-12-15 08:13:11 所属栏目:百科 来源:网络整理
导读:我有A级,它暴露了一个事件.订阅该活动的B类对象. 这两个实例实际上也是对彼此的定期引用. 我想序列化A,并通过线路传输两个对象,在另一端重建.这样可以正常工作,但不保留事件订阅. 我想我必须实现自己的序列化构造函数,以便在我的对象被反序列化时“收到通知
我有A级,它暴露了一个事件.订阅该活动的B类对象.
这两个实例实际上也是对彼此的定期引用.
我想序列化A,并通过线路传输两个对象,在另一端重建.这样可以正常工作,但不保留事件订阅.

我想我必须实现自己的序列化构造函数,以便在我的对象被反序列化时“收到通知”,因此它可以重新订阅事件.

但是,看起来这意味着我必须通过实现ISerializable来完全实现自动化.我现在依赖于BinaryFormatter和[Serializable]属性,实际上非常喜欢它.

有没有人知道让我获得反序列化通知的方法,同时仍然可以使用内置的序列化系统来自动序列化&为我反序列化我有点复杂的对象图?

谢谢,卢卡斯

解决方法

标准(非 XML)序列化机制使用特殊属性来标记在(反)序列化期间用作回调的方法. OnDeserializedAttribute正是您要找的.类似的解决方案是实现 IDeserializationCallback接口.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读