如何从另一个项目添加对共享代码项目(.shproj)的引用

问题描述 投票:22回答:4

当我在Visual Studio中创建一个新的通用应用程序项目时,它创建了一个共享项目,让我在创建的Windows Phone 8.1和Windows 8.1项目之间共享代码。

现在我还有其他项目,我也想使用共享代码。但是,我没有看到在“添加引用...”窗口中添加选择该项目的方法。

如果我尝试从一个现有项目复制引用,我会收到错误:

灾难性故障(HRESULT异常:0x8000FFFF(E_UNEXPECTED))

当我点击“粘贴参考”时。如何从其他项目中引用共享项目?

c# .net vb.net visual-studio
4个回答
34
投票

添加引用将需要编辑要添加它的项目文件。如果它有帮助,您可以在已经引用它的项目文件中达到峰值,以查看工作示例。

在项目文件的底部附近(例如,.csproj),可能已经有一个<Import>元素,如

<Project ...>
  [...]
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

您可以通过添加另一个共享项目的元素来添加共享项目。例如:

<Project ...>
  [...]
  <Import Project="..\Shared\Shared.projitems" Label="Shared" />
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

Label属性设置为“Shared”非常重要。如果将其设置为其他内容,则Visual Studio将不会将其识别为共享项目,并且不会显示在“引用”下。应将项目设置为相应“.projitems”文件的路径。


4
投票

Visual Studio 2017:

右键单击“解决方案资源管理器”中的“引用”或“依赖项”项,然后选择“添加引用...”

Dependencies or References context menu

参考管理器将打开。单击“参考管理器”左侧的“共享项目”

enter image description here

然后选择您的项目并单击“确定”。


1
投票

在Tar​​getProject.csproj文件中添加该字符串:

<Import Project="..\YourSgaredProject\YourSgaredProject.projitems" Label="Shared" Condition="Exists('..\YourSgaredProject\YourSgaredProject.projitems')" />

-2
投票

查看Shared Project Reference Manager扩展程序。

© www.soinside.com 2019 - 2024. All rights reserved.