C# MEF don';在VSIX编辑器扩展中看不到其他项目中的依赖项
我正在编写Visual Studio编辑器扩展。在我的解决方案中有两个项目:主VSIX项目(第一个)和类库项目(第二个)。在第二个项目中,有几个为MEF导出并在第一个项目中使用的依赖项。但在运行时,MEF无法解析放置在第二个项目中的依赖项。 我如何解决这个问题 在其他情况下(简单的is-console应用程序),我会这样做:C# MEF don';在VSIX编辑器扩展中看不到其他项目中的依赖项,c#,mef,vsix,C#,Mef,Vsix,我正在编写Visual Studio编辑器扩展。在我的解决方案中有两个项目:主VSIX项目(第一个)和类库项目(第二个)。在第二个项目中,有几个为MEF导出并在第一个项目中使用的依赖项。但在运行时,MEF无法解析放置在第二个项目中的依赖项。 我如何解决这个问题 在其他情况下(简单的is-console应用程序),我会这样做: var assemplies = AppDomain.CurrentDomain.GetAssemblies() .Where(x => x.Location
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");
var assemplies=AppDomain.CurrentDomain.GetAssemblies()
.Where(x=>x.Location.Contains(AppDomain.CurrentDomain.BaseDirectory));
var compositionHost=新容器配置()
.带组件(组件)
.CreateContainer();
var compositionContext=compositionHost.GetExport();
var exporter=新导出(compositionContext,()=>{});
var someService=exporter.Value.GetExport(“第一”);
但是如何解决Visual Studio编辑器扩展的这个问题我不理解这个问题已经解决了。
如果有人感兴趣,只需将“Microsoft.VisualStudio.MefComponent”类型的资产添加到vsixmanifest中,以获得必要的程序集