我应该如何在应用程序域边界加载程序集以加载和卸载模块?
问题描述:
我知道在运行期间动态加载程序集以防止它被卸载的限制。相反,有人建议,如果这是一项要求,我应该将模块加载到其他应用程序域中,然后在域边界上执行代码。我应该如何在应用程序域边界加载程序集以加载和卸载模块?
我如何能缓解这一发展过程,并与这种情况下工作吗?什么工具或框架可用?
答
这取决于相互作用的复杂程度的 “宿主” 应用程序和动态加载的代码之间。如果它相当复杂,那么你可能想要完整的System.AddIn路由。如果您的交互非常简单,那么您应该编写自己的类来处理程序集的加载和卸载。对于各种小型项目,我已经做了很多次,所以我可以发布代码,如果这会有所帮助的话。
+0
这将是有益的,交互将几乎在托管脚本级别,但它仍然是本地代码,长话短说。 – Firoso 2010-10-23 02:16:40
MEF不能够卸载组件,而据我可以告诉同样没有温莎,他们都只是一般的组成框架。 MAF是我熟悉的唯一选择。 – Firoso 2010-10-22 19:03:04