引用子项目的所有项目都必须安装NuGet软件包Microsoft.Bcl.Build(C#/ Windows Phone 7)?

前端之家收集整理的这篇文章主要介绍了引用子项目的所有项目都必须安装NuGet软件包Microsoft.Bcl.Build(C#/ Windows Phone 7)?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在Visual Studio 2012中涉及到具有多个项目的C#解决方案的特别困难的重构会话。我需要将一堆代码放入自己的程序集中,以便可以在多个项目中共享代码,所有这些都在同一个解决方案中。然而,无论我尝试什么,我都会收到引用新共享项目的项目的警告:“所有项目引用{共享项目名称}必须安装nuget软件包Microsoft.Bcl.Build”。

我已经通过依赖项目和共享项目与细齿梳,详细验证他们都使用相同的版本和完全相同的DLL为Microsoft.Bcl版本1.0.1.19和Microsoft.Bcl.Async版本1.0。 16包:

> System.Runtime
> System.Threading.Tasks
> Microsoft.Threading.Task
> Microsoft.Threading.Tasks.Extensions
> Microsoft.Threading.Tasks.Extensions.Phone

DLL路径都被解析和相同。 XAP文件确实构建,但我仍然得到这个警告告诉我,在依赖项目中没有引用Microsoft.Bcl.Build,尽管事实上我可以看到它是。

如果我尝试卸载,然后重新安装这两个包使用NuGet为涉及的每个项目,我得到的引用与空路径和5个DLL引用涉及的警告图标。由于某些原因,NuGet添加了引用,但找不到DLL。此外,如果我这样做,我经常发现自己的问题是在尝试添加引用时遇到“无法添加引用”错误的项目。然后我关闭并重新打开解决方案,导致“项目无法加载”错误。所以我必须手动编辑项目文件删除错误的包导入语句,并重新加载项目。

如何解决这个问题,以及避免将来头痛的一般技巧是什么?让NuGet管理丢失的软件包没有帮助。

如果有人遇到这个和@ Swell的解决方案让你去“wtf”:

我最近经历了一个较旧的MVC项目,并更新了(更新的剃刀,asp,http等)nuget包)。该项目独立自主,建成良好,但是当我发布时,OP的错误失败了。

原来是因为我没有更新与它相关的* .Tests项目(应该已经弄清楚,虽然不知道为什么测试与项目密切相关)。所以,要修复:

>右键单击解决方案并管理nuget软件包。
>浏览所有在Web项目中更新的软件包,并将它们应用于其他项目(每个“更新”将显示一个包含适用项目的树,我只需点击一下就可以了)。
>重建。

你现在应该是好的,不应该吠叫你。希望能帮助别人。

猜你在找的Windows相关文章