gpt4 book ai didi

.net - 在没有单独的插件接口(interface) DLL 的情况下,如何使应用插件感知?

转载 作者:行者123 更新时间:2023-12-01 11:05:37 25 4
gpt4 key购买 nike

开发插件架构的传统过程似乎是创建一个单独的 DLL,其中只包含所有插件将实现的通用接口(interface),并使核心应用程序和插件都依赖于它。

我正在尝试做同样的事情,但没有单独的接口(interface) dll。一种显而易见的方法是让所有插件都依赖于核心应用程序,但这并不是一个很好的解决方案。

你能想到更漂亮的解决方案吗?理想情况下,不会有 bundle 接口(interface)的 dll;如果那是不可能的,那么如果不打算运行插件的用户根本不需要下载插件 dll,那将是非常酷的。 Taht方式,只有运行插件的人才需要接口(interface)DLL。

最佳答案

您可以使用 MEF 并使用元数据(字符串)而不是实际接口(interface)或定义的类型导入 System.Object 实现。

也就是说,主机进程将很难使用没有已知接口(interface)的插件。需要通过反射进行某种形式的使用,这将非常非常难看。

就我个人而言,我只想包含一个简单的 DLL 接口(interface),它可以独立存在。应用程序可以将它与发行版 bundle 在一起,插件可以使用它。这样做的好处远远超过维护一个只有接口(interface)的小型组件的额外“成本”。

关于.net - 在没有单独的插件接口(interface) DLL 的情况下,如何使应用插件感知?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6205221/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com