我建立一個MAF管線其中插件還可以使用回調到主機系統從主機使用一些服務管道項目。這些方法可能會引發應該由加載項處理的異常。處理它不僅意味着只抓住它們,而且還要分析它們。如何創建例外
一如往常有兩種選擇,以獲得跨越邊界的AppDomain對象:通過串行化,或通過延長MarshalbyRefObject
。
其實我有問題有兩個選項:
當我使用序列,那麼我的加載項需要知道確切類型的例外,因爲它否則無法反序列化異常。這意味着我不能在抽象層上工作。 Exception類本身被標記爲可序列化的,所以也需要被標記爲serialable,使這個工程的所有子類。對我來說,這是不是一個真正的解決方案,我不能隔離主機和插件(如我不能抽象工作)
使用MarshalByRefObject的將無法正常工作以及所有異常需要延長的類型「異常」,因此不能擴展MarshalbyRefObject。
是否有可能解決這個問題的任何標準模式?