0

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

“参考”节点的上下文菜单

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

该项目确实包含这些功能(如此处所述):
<ProjectCapability Include="AssemblyReferences;COMReferences;ProjectReferences;SDKReferences" />

我还添加了ReferenceManagerProjects&DependenciesTree功能(另一个链接),并确保存在已解析引用的规则文件(我通过手动向项目添加一些程序集引用来对此进行测试,并且这些引用正确显示)。

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

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

4

1 回答 1

0

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

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

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

参考管理器的备用位置

于 2022-01-11T10:31:42.307 回答