【发布时间】:2011-01-24 00:53:52
【问题描述】:
给定两个应用域: 首先,Library1 和 CommonLibrary 被加载。在第二个 Library2 和 CommonLibrary 中被加载。
Library2 定义了一个继承自 CommonException(在 CommonLibrary 中定义)的 Library2Exception。 当我在第一个 AppDomain 中调用第二个 AppDomain 的 MarshallByRef 上引发 Library2Exception 的方法时,会引发 SerializationException。
确实,.Net 尝试反序列化 Library2Exception,但此类型在 Library2 中定义,在第一个 AppDomain 中找不到。我希望它成为我可以处理的 CommonException。
所以,我的问题是:
- 我们如何控制AppDomain 之间的序列化,就像SerializationBinder 对BinaryFormatter 所做的那样?
- 是否可以有异常 ByRef 而不是 ByValue(序列化)?
【问题讨论】:
-
请阅读我关于跨AppDomain通信的博客blog.vcillusion.co.in/…
标签: c# .net exception serialization appdomain