如何实现与我的 .NET 插件架构的向后兼容性

发布于 2024-09-08 00:17:37 字数 484 浏览 3 评论 0原文

背景: 我正在开发一个具有服务器端插件架构的 ASP.NET 应用程序。 我在pluginInterfaces .NET 程序集中定义了一组接口。

第三方开发人员可以针对这些接口开发插件程序集,将其程序集放置在插件文件夹中,并且它将动态加载以提供新功能。

插件将引用插件接口程序集。

问题: 将来我可能会使用新功能更新我的pluginInterfaces程序集,但它会 保持100%向后兼容(即接口不会改变)。但是,pluginInterfaces 程序集将具有新的程序集版本号。

我希望(第三方)插件程序集继续工作。 但他们将不再找到他们构建的pluginInterfaces 程序集。 该pluginInterfaces程序集将有一个强名称,因此插件将寻找 与装配版本完全匹配的版本。

问题: 实现这一目标的最佳方法是什么? 这就是“出版商政策”的用途吗?

Background:
I am developing an ASP.NET application with a server side plug in architecture.
I define a set of interfaces in a pluginInterfaces .NET assembly.

Third party developers can develop a plugin assembly against these interfaces, place their assembly in a plugin folder, and it will be dynamically loaded to offer new functionality.

The plugins will reference the plugin interfaces assembly.

Problem:
In the future I may update my pluginInterfaces assembly with new functionality, but it will
remain 100% backward compatible (i.e. interfaces will not changed). However the pluginInterfaces assembly will have a new assembly version number.

I want (third party) plugin assemblies to just continue to work.
But they will no longer find the pluginInterfaces assembly that they were built against.
The pluginInterfaces assembly will have a strong name, and hence the plugins will look for
the version with exact matching assembly version.

Question:
What is the best way to achieve this?
Is this what 'Publisher Policy' is for?

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

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

发布评论

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

评论(1

浮萍、无处依 2024-09-15 00:17:37

您可以尝试绑定重定向

You could try binding redirection.

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