自定义项目类型中缺少“参考管理器”(在 VS 隔离外壳中)

Posted

技术标签:

【中文标题】自定义项目类型中缺少“参考管理器”(在 VS 隔离外壳中)【英文标题】:"Reference manager" missing in custom project type (in VS IsolatedShell) 【发布时间】:2021-12-01 14:27:45 【问题描述】:

我正在开发一个 VS IsolatedShell 2015 应用程序;我目前的目标是启用项目引用。 但是,当右键单击项目中的“引用”节点时,基本上没有可用的选项,尤其是在我的情况下,引用管理器丢失了:

项目本身是基于 CPS 的,所以也许我需要在某个地方启用它?

该项目确实包含这些功能(如文档中的here):<ProjectCapability Include="AssemblyReferences;COMReferences;ProjectReferences;SDKReferences" />

我还添加了 ReferenceManagerProjectsDependenciesTree 功能 (another link) 并确保存在已解析引用的规则文件(我通过手动向项目添加一些程序集引用来测试这一点,这些是正确显示)。

在 Shell .pkgundef 文件中启用了“特定于 Web 的软件包”,正如 this page 上的最后一个答案中所暗示的那样。 我还查看了所有其他 pkgdef/pkgundef 文件,但没有其他文件看起来应该由参考管理器负责。

还有其他地方可以锁定参考管理器吗? 或者是否需要为 CPS 实现一些接口才能启用此功能?

【问题讨论】:

【参考方案1】:

原来解决问题的一种方法是添加IProjectCapabilitiesProvider 的实现并返回我需要的引用类型的功能:

 public Task<IEnumerable<string>> GetCapabilitiesAsync()
 
     return Task.FromResult<IEnumerable<string>>(new[]
     
         CustomProjUnconfiguredProject.UniqueCapability,
         "AssemblyReferences",
         "ProjectReferences"
     );
 

仍然无法使用“参考”节点访问参考管理器,但是使用项目的上下文菜单,您可以在“添加”>“参考”中找到它

【讨论】:

以上是关于自定义项目类型中缺少“参考管理器”(在 VS 隔离外壳中)的主要内容,如果未能解决你的问题,请参考以下文章

最新检查声称自 VS 2019 以来缺少构建输出

我的自定义帖子类型 URL Slug 中缺少连字符/破折号(-)

C# 自定义VS安装项目的安装路径(可以通过程序调用DefaultLocation属性吗)

vs2008 自定义控件无法生成dll文件 c#

vs 在进行调试时 查看DataSet数据 提示未能加载此自定义查看器的

使用框架 4.7.2 运行 SDK 项目的 vs2019 中的控件和表单缺少图标和视图设计器选项