c# - MEF 在 VSIX 编辑器扩展中看不到其他项目中的依赖项
问题描述
我正在编写一个 Visual Studio 编辑器扩展。在我的解决方案中有两个项目:主要的 VSIX 项目(第一个)和类库项目(第二个)。在第二个项目中,有几个为 MEF 导出并在第一个项目中使用的依赖项。但在运行时 MEF 无法解析放置在第二个项目中的依赖项。我该如何解决这个问题?
在其他情况下(简单的是 - 控制台应用程序)我会做这样的事情:
var assemplies = AppDomain.CurrentDomain.GetAssemblies()
.Where(x => x.Location.Contains(AppDomain.CurrentDomain.BaseDirectory));
var compositionHost = new ContainerConfiguration()
.WithAssemblies(assemplies)
.CreateContainer();
var compositionContext = compositionHost.GetExport<CompositionContext>();
var exporter = new Export<CompositionContext>(compositionContext, () => { });
var someService = exporter.Value.GetExport<ISomeService>("First");
但是如何解决我无法理解的 Visual Studio 编辑器扩展的这个问题
解决方案
此问题已解决。如果有人感兴趣,只需将必要程序集的“Microsoft.VisualStudio.MefComponent”类型的资产添加到 vsixmanifest。
推荐阅读
- xpath - Chropath 在 Salesforce 中不可见/工作
- java - java中后期绑定的工作原理
- python-3.x - 检查用户输入的 ipv4 格式是否正确
- pine-script - 您如何避免“strategy.entry”价格在回测期间变为“开盘”价格?
- python - Python串行端口在传输中省略字符
- python - 使用 Zbar python 的 QR 方向
- jquery - 如何在代码镜像中更改事件 dbl-click
- jmeter - 验证 apache 发布文件的签名
- html - CSS不影响引导导航栏背景颜色
- c++ - CreateWICTextureFromFile 返回 E_NOINTERFACE