当在解决方案目录中添加一个程序集的引用时,是否有相对添加它的方式,以便在检入和检出存储库时正确地在项目中引用它?
当在解决方案目录中添加一个程序集的引用时,是否有相对添加它的方式,以便在检入和检出存储库时正确地在项目中引用它?
C:\myProj\myProj.sln
,在C:\myProj\
的子文件夹中添加的任何引用都会自动添加为相对引用。C:/myReferences/myDLL.dll
,请执行以下操作:
1.通过在“解决方案资源管理器”中右键单击项目并选择“添加引用...”,在Visual Studio GUI中添加引用
2.查找存在此引用的*.csproj并在文本编辑器中打开它
3.将< HintPath >编辑为以下内容
<HintPath>..\..\myReferences\myDLL.dll</HintPath>
C:\myReferences\myDLL.dll
。是的,只需在您的解决方案中创建一个名为lib/的目录,然后将您的dll添加到该目录中,并在项目中添加它(添加->现有项目->等等)。然后根据您的项目添加引用。
我已经在svn和cvs下多次完成此操作。
在VS 2017中,这是自动的。所以只需像往常一样添加引用
即可。
请注意,在引用属性
中显示绝对路径,但在.vbproj/.csproj
中使用相对路径。
<Reference Include="NETnetworkmanager">
<HintPath>..\..\libs\NETnetworkmanager.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes>
</Reference>
error MSB4066: The attribute "Include" in element <Reference> is unrecognized.
- IOviSpot最简单的方法可能是将引用添加到程序集中,然后(手动)修补相应的Visual Studio项目文件(扩展名为.csproj)中引用的文本表示形式,使其变得相对。
我在VS 2005中已经多次这样做过,没有任何问题。
如前所述,您可以手动编辑项目的.csproj
文件以手动应用它。
我还注意到,Visual Studio 2013尝试将相对路径应用于引用提示路径,可能是为了使项目文件更具可移植性。