我开发的应用程序使用带有 .NET 插件功能的插件,由System.AddIn
. 我的主机应用程序以及加载项共享一些资源,例如 WPF 嵌入字体和 XAML 图标。我想避免将它们包含在 host 和 add-ins中。有没有什么方法可以在没有太多复杂性的情况下实现这一目标?
我的应用程序已经包含 7 个部分:主机、主机端视图、主机端适配器、合同、插件端适配器、插件端视图,最后是插件。我看到的问题是,当宿主加载加载项程序集时,加载项不可能访问位于宿主程序集中的资源。
插件提供主机使用的服务。我希望我的主机提供加载项消耗的资源。
一种可能的解决方案是引入另一个包含所有资源的程序集,主机和加载项都可以访问该程序集。该解决方案的积极/消极方面是什么?就像,当它不是合同时,加载项可以依赖这个程序集的存在吗?