如何卸载 dll 以便在 MEF 重组后将其删除?

发布于 2024-09-07 05:10:32 字数 199 浏览 12 评论 0原文

  1. 使用 MEF,我编写我的 DLL

  2. 我使用我的 DLL

  3. 我在没有这个 DLL 的情况下重新组合

  4. 我想删除它 // =>它不起作用

我如何卸载一个 dll,以便在 MEF 重组后删除它,而该 dll 不是由该 dll 组成的?

  1. With MEF, I compose my DLL

  2. I work with my DLL

  3. I recompose without this DLL

  4. I want to delete it // => it doesn't work

How can I unload a dll in order to delete it after a MEF recomposition in which this dll is not composed ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

月野兔 2024-09-14 05:10:32

您无法卸载 DLL/程序集。只有一个应用程序域。

You can not unload a DLL/assembly. Only an AppDomain.

小忆控 2024-09-14 05:10:32

好的,那么如何将 AppDomain“连接”到 MEF 组合?

遗憾的是,MEF 不提供执行此操作的基础设施。你得自己烤。

Ok so how can I 'connect' an AppDomain to MEF composition ?

MEF doesnt provide infrastructure to do that, unfortunately. You'd have to bake your own.

一梦浮鱼 2024-09-14 05:10:32

如果您尝试在目录中插入一个对象组件,如下所示:

    Assembly assembly = Assembly.Load(System.IO.File.ReadAllBytes(Path.Combine(directoryPath, ItemPlugin)));
aggregateCatalog.Catalogs.Add(new AssemblyCatalog(assembly));

您可以稍后删除该文件...

If you try to insert on catalog one Object Assembly like this:

    Assembly assembly = Assembly.Load(System.IO.File.ReadAllBytes(Path.Combine(directoryPath, ItemPlugin)));
aggregateCatalog.Catalogs.Add(new AssemblyCatalog(assembly));

You can Delete the file later...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文