1

这就是我的裁判的样子......

在此处输入图像描述

如果我在项目或我的解决方案上进行清理和构建,它将无法构建,因为清理已经删除了我们使用的 Nuget 包(Moq 和 NUnit.Framework)的引用......

在此处输入图像描述

重建项目并不能解决问题,但是如果我重建解决方案,包 refs 将再次可用,并且构建将成功。

奇怪的是,此解决方案中的其他单元测试项目不会发生这种情况。它对 MOQ 和 NUnit 的引用在清理后保持不变,即使它们是通过 Nuget 以相同的方式添加的。我怀疑我错过了一些愚蠢的事情,但对于我的生活,我无法解决它。

编辑:在准备此更新的图像时,我注意到症状与我想的不完全一样,因此我扩展了问题描述。

4

1 回答 1

0

知道了!

我打开了两个 csproj 文件,发现两个文件中相同程序集的提示路径不同。好项目引用packages哪里,坏项目引用好(Delivery.Website.UnitTests)项目。

所以要修复...

<Reference Include="Moq">
  <HintPath>..\Delivery.Website.UnitTests\bin\Debug\Moq.dll</HintPath>
</Reference>
<Reference Include="nunit.framework">
  <HintPath>..\Delivery.Website.UnitTests\bin\Debug\nunit.framework.dll</HintPath>
</Reference>

……变成……

<Reference Include="Moq">
  <HintPath>..\packages\Moq.4.0.10827\lib\NET40\Moq.dll</HintPath>
</Reference>
<Reference Include="nunit.framework">
  <HintPath>..\packages\NUnit.2.6.2\lib\nunit.framework.dll</HintPath>
</Reference>

...它应该像它一样工作!

不知道它是如何进入这种状态的:\

于 2013-08-20T08:35:24.677 回答