PRISM / MEF:ModuleExportAttribute 与 ExportAttribute?

发布于 2024-10-22 00:51:03 字数 54 浏览 1 评论 0原文

我不明白这里有什么区别,有人愿意解释 ModuleExport 与 Export 有何不同吗?

I don't understand what the difference here is, anyone care to explain how a ModuleExport is different than an Export?

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

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

发布评论

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

评论(1

北风几吹夏 2024-10-29 00:51:03

ModuleExport 是一个 ExportAttribute,但具有一些附加的特定于模块的属性。

如果您查看ModuleExport的源代码 你会发现它具有 ExportAttribute 的所有属性,再加上:

  1. ModuleName
  2. ModuleType
  3. 模块依赖
  4. 项 Module Initialization

所有这些都来自 接口 IModuleExport

如果您查看 MefModuleManager 的 ImportedModules 属性 (负责查找模块的类),您会看到使用 IModuleExport 接口导入它们,所以这就是为什么您需要使用实现 的属性IModuleExport,而不是直接的[ExportAttribute(typeof(IModule))]

希望这就是您正在寻找的。

ModuleExport is an ExportAttribute, but with some additional module-specific properties.

If you look at the source code for ModuleExport you find that it has all of the properties of an ExportAttribute, plus:

  1. ModuleName
  2. ModuleType
  3. Module Dependencies
  4. Module Initialization

All of these come from the interface IModuleExport.

If you look at the ImportedModules property of MefModuleManager (the class responsible for finding modules), you see that is imports them all using the IModuleExport interface, so this why you are required to use an attribute implementing IModuleExport, rather than just straight up [ExportAttribute(typeof(IModule))].

Hope this is what you were looking for.

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