当包含MEF组件的VSIX项目被安装时,Visual Studio如何找到MEF组件?我知道常规方法是添加包含MEF部件的dll目录的目录列表。Visual Studio如何知道在VSIX项目中寻找MEF的位置?
Visual Studio扩展(VSIX)通常包含一个VS Package类,一个extension.vsixmanifest文件和零个或多个PKGDEF文件,这些文件提供元数据和扩展初始化信息给IDE。通过在extension.vsixmanifest文件中进行MefComponent注册,VS意识到MEF组件,该文件表明应扫描特定程序集以生成MEF缓存。在您的扩展中声明MEF组件的最简单方法是右键单击项目,选择“新建项”,然后将Package添加到您的项目中。这将提供source.extension.vsixmanifest文件,您可以在其中添加MEF组件注册。双击此文件,在VSIX清单设计器的“Assets”选项卡中添加您的注册即可。