从 Visual Studio 2015 Update 1 RC 进行 dnu 恢复

13
每当我通过project.json文件修改包时,我的引用区域就会显示“错误-请查看错误列表”。错误列表将显示“已修改project.json中的依赖项。请运行'dnu restore'生成一个新的锁定文件。”
有没有一种方法可以在Visual Studio中完成这个过程?我必须加载2015年的开发人员命令提示符,并cd到项目目录中并从那里运行命令。
如果我右键单击引用并选择“还原包”(听起来应该这样做),它只会显示上述“请参阅错误列表”。

除了命令行,你找到其他的方法了吗?这真的很奇怪,最常见的功能之一居然不能用... - Ilya Chernomordik
我下载的博客文章中提到,当安装更新1时,工具将自动安装,但实际上并没有发生。我不得不手动下载ASPNET 5工具并进行安装。然后,它才能从菜单中解析,并且构建项目也可以正常工作。我是从Beta5升级到RC1。 - eddpoints
5个回答

16

我找到了真正的解决方案,它修复了这个问题(至少对我有效)。问题在于,“dnu restore”显然与Nuget相关,即使您在同一解决方案中引用自己的项目。因此,实际上,您可以右键单击解决方案/引用,然后选择还原包,而不是执行“dnu restore”。那就解决了。

要自动完成此操作,您需要转到“工具”->“选项”->“NuGet包管理器”,并选中“允许下载丢失的软件包”和“构建时自动检查”。最后一个似乎很奇怪,因为您没有构建,但这会触发VS正确还原包。


9
我遇到了和你一样的问题。我所做的是以下步骤:
1. 以管理员身份打开命令提示符。 2. 更改目录到你的 .dnx 文件夹,我的在 C:\Users\MyUserName\.dnx\runtimes\dnx version{rc1-final in my case}\bin\ 3. 运行 dnu restore 命令来还原你项目中的 project.json 文件。我的命令如下:dnu restore C:\Dev\Projects\ExampleProject\project.json 4. 它将下载并还原所有依赖项,然后你应该可以继续进行了。希望这可以帮助你!

我已经使用clr x64来实现这个目的,它确实起到了作用。使用哪个运行时环境是否重要,或者它们都能正确生成这个project.lock文件?你知道除了那个花哨的过程还有什么替代方法吗(肯定是一个bug...)? - Ilya Chernomordik

3
我在升级到VS 2015 Update 1后遇到了类似的问题。VS认为我的运行时版本是RC1,但DNVM(.NET版本管理器)对此一无所知。因此,在发布解决方案时,它使用了beta nuget包、放置文件夹的配置、构建等等。所以我所做的就是:
dnvm list

显示可用运行时列表。我的看起来是这样的:
Active Version           Runtime Architecture OperatingSystem Alias
------ -------           ------- ------------ --------------- -----
       1.0.0-beta5       clr     x64          win
       1.0.0-beta5       clr     x86          win
       1.0.0-beta5       coreclr x64          win
       1.0.0-beta5       coreclr x86          win
  *    1.0.0-beta7       clr     x86          win             default

之后,我通过以下方式升级了DNVM到最新版本:

dnvm update-self

并安装了最新稳定版本的运行时:

dnvm upgrade

这也会将最新的运行时设置为您环境的默认值。升级后,您应该得到以下版本列表:

Active Version           Runtime Architecture OperatingSystem Alias
------ -------           ------- ------------ --------------- -----
       1.0.0-beta5       clr     x64          win
       1.0.0-beta5       clr     x86          win
       1.0.0-beta5       coreclr x64          win
       1.0.0-beta5       coreclr x86          win
       1.0.0-beta7       clr     x86          win
       1.0.0-rc1-update1 clr     x64          win
  *    1.0.0-rc1-update1 clr     x86          win             default
       1.0.0-rc1-update1 coreclr x64          win
       1.0.0-rc1-update1 coreclr x86          win

希望有所帮助。

2

我下载的博客文章中提到,当安装更新1时,工具会自动安装,但实际上并没有发生,我不得不手动下载ASPNET 5工具并安装它。然后才能从菜单中解决问题,构建项目也可以正常工作。我正在从Beta5升级到RC1。


我已经安装了asp.net rc更新1(单独的安装程序),我还需要安装其他东西吗?你从哪里获取这个特殊的工具? - Ilya Chernomordik
我从这里下载的:链接,但具体的工具下载已经不存在了。它应该随着更新1一起安装,但出于某种原因没有安装成功。我最近重新安装了VS2015,但没有遇到同样的问题。 - eddpoints
在我们的Visual Studio 2015 Enterprise Update 1上,我们遇到了类似的问题,解决方法是:“右键单击引用,选择“还原包”。 - nam

2

我能够通过进入工具>包管理器控制台,在Visual Studio内部使用dnu restore命令。在还原之前,我删除了所有的dnx包,方法是前往C:\Users\name\.dnx\packages。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接