小编mel*_*ers的帖子

为什么在NuGet和Visual Studio之间添加不同的C#引用

我们使用NuGet(NuGet版本:3.5.0.1996)两种不同的方式.我们要么从命令行运行它,要么在Visual Studio(2015)中使用NuGet包管理器.

问题是这两种方式添加了对不同格式的.csproj文件的引用.如果我们使用命令行,我们会得到一个如下所示的引用:

<Reference Include="Dummy, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null">
  <HintPath>..\packages\Dummy.1.27.10\lib\net452\Dummy.dll</HintPath>
  <Private>True</Private>
</Reference>
Run Code Online (Sandbox Code Playgroud)

如果我们在Visual Studio中使用NuGet包管理器,我们会得到一个如下所示的引用:

<Reference Include="Dummy, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
  <HintPath>..\packages\Dummy.1.27.10\lib\net452\Dummy.dll</HintPath>
  <Private>True</Private>
</Reference>
Run Code Online (Sandbox Code Playgroud)

请注意,其中一个使用PublicKeyToken属性添加引用,另一个使用processorArchitecture属性添加它.

这会导致我们的源代码控制出现频繁(和不必要)更新和合并的问题.

很高兴知道为什么会发生这种情况,但我宁愿有办法防止它发生.有什么建议?

c# reference nuget

10
推荐指数
1
解决办法
821
查看次数

标签 统计

c# ×1

nuget ×1

reference ×1