NuGet恢复软件包但缺少DLL
问题描述:
我有一台Visual Studio解决方案在我的机器上成功运行,但是当我提交对BitBucket的更改并且另一个用户已经拉下了该项目并将其构建在Visual Studio或TeamCity上时,我们“已经收到诸如:NuGet恢复软件包但缺少DLL
error CS0234: The type or namespace name 'Entity' does not exist in the namespace
'System.Data' (are you missing an assembly reference?)
当我看了这个项目,我可以看到每个NuGet包文件夹存在,但DLL文件丢失。这本身是一个easy fix;我只是删除了违规的软件包,并在下一次构建NuGet恢复包和DLL现在。
我不明白为什么NuGet在第一次尝试时没有获取DLLs?
答
我花了一段时间才弄清楚发生了什么,但问题不是NuGet,而是源代码控制的设置。
我还没有将packages
文件夹添加到Mercurial的忽略列表中。默认情况下,它将NuGet包上传到BitBucket,但忽略了这些DLL。当另一个用户下载该项目时,它将下拉包装,Visual Studio或TeamCity看到包文件夹,并假定包已经下载。将packages文件夹添加到.hgignore文件将会在将来停止这种情况。
感谢您在这里分享您的解决方案,您可以将其标记为答案,这样可以帮助其他社区成员获得相同的问题。 –
@ Leo-MSFT - 感谢提醒,我只是等待接受我自己的答案完成2天限制。 – GrandMasterFlush