繁体   English   中英

.Net远程处理-委托的序列化

[英].Net Remoting - Serialisation of Delegates

我为已建立的应用程序编写了一个自定义的远程格式化程序接收器。 格式化程序似乎在大多数情况下都可以使用,直到我尝试使用它来调用将回调传递给CAO的远程方法为止。 此时,我得到一个SerializationException,表明我正在尝试序列化CAO,这显然不是我想要执行的操作。 CAO继承自MBRO,并且对象生存期在此阶段不起作用。

有谁知道我该如何在格式化程序中序列化传入的IMessage,以保留对CAO的引用? 我假设我需要遍历对象图,将CAO转换为ObjRef,然后可以对其进行序列化,但是我的问题更为根本,因为我没有具体的“消息”要序列化,而只有IMessage。 我宁愿不使用反射。

我知道WCF,但是由于应用程序很大,因此不希望在此阶段迁移到WCF。

Codeproject上有一篇很棒的文章,可能会为您提供所需的答案 在远程处理中实现事件/代理非常棘手,解决方法也很难实现。 最好的阅读网站的人是Ingo Rammer ,他撰写并撰写了有关远程处理的出色著作。 过去,我曾使用GenuineChannels来规避在标准.NET远程处理中发现的事件处理限制的用法,并且它确实起作用。 但是, 正版频道似乎已经陷入麻烦...

希望这对您有所帮助,汤姆,谢谢。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM