我们在项目中使用NuGet,我们遇到了NuGet包的csproj引用问题。
情景1
当我们使用以下详细信息在Dev系统上安装少量软件包时,
它将特定版本添加到csproj文件中。如下所示,(csproj片段),
<Reference Include="ABCD.XYZ, Version=1.0.6045.25123, Culture=neutral, processorArchitecture=AMD64">
<HintPath>..\packages\ABCD.XYZ.2.0.0.0\lib\net45\ABCD.XYZ.dll</HintPath>
<Private>True</Private>
</Reference>
场景2
在构建服务器上添加具有以下详细信息的相同包时
它增加了以下细节,
<Reference Include="ABCD.XYZ">
<HintPath>..\packages\ABCD.XYZ.2.0.0.0\lib\net45\ABCD.XYZ.dll</HintPath>
<Private>True</Private>
</Reference>
如何添加特定版本?我看到这个post提到它在该用户的csproj中添加了以下标记,但对我们来说情况并非如此。
<SpecificVersion>False</SpecificVersion>
我的场景是,我们的构建会在每次构建时增加ABCD.XYZ程序集版本。 因此,具有上述参考的项目失败,因为它无法找到上述版本(NuGet在参考中添加了强名称)
我尝试了各种构建配置,如Debug,Release,x64,Any CPU等。
手动更新csproj,不是那么灵活的选项
所以,这是我的几个问题,
如果需要其他数据,请告诉我们。