【发布时间】:2017-04-27 07:57:09
【问题描述】:
我安装了 .NET Core 并使用 ASP.NET Core Web 应用程序 (.NET Core) 模板创建了一个新的 VS2015 项目。
这个基本项目编译和运行都很好,在参考部分没有任何奇怪的错误。
然而,NuGet 包管理器 UI 可识别 13 个更新。我大胆/天真地在 PM 控制台上执行了这个命令:
Update-Package
它会输出此问题底部显示的成功消息的长长列表(为简洁起见),并更新project.json 中的版本号。
这是project.json的依赖部分:
"dependencies": {
"Microsoft.ApplicationInsights.AspNetCore": "1.0.2",
"Microsoft.AspNetCore.Mvc": "1.1.0",
"Microsoft.AspNetCore.Routing": "1.1.0",
"Microsoft.AspNetCore.Server.IISIntegration": "1.1.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.1.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0",
"Microsoft.Extensions.Configuration.FileExtensions": "1.1.0",
"Microsoft.Extensions.Configuration.Json": "1.1.0",
"Microsoft.Extensions.Logging": "1.1.0",
"Microsoft.Extensions.Logging.Console": "1.1.0",
"Microsoft.Extensions.Logging.Debug": "1.1.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0",
"Microsoft.NETCore.App": {
"version": "1.1.0",
"type": "platform"
}
},
但在解决方案资源管理器中,软件包版本未更新。
当我重建时,我会收到大量警告,均采用以下格式:
warning NU1007: Dependency specified was Microsoft.AspNetCore.Mvc >= 1.1.0 but ended up with Microsoft.AspNetCore.Mvc 1.0.1.
我不明白为什么 NuGet 会更新 package.json,而不是项目引用。此外,我不知道如何手动修复它。虽然 project.json 已更新,但 project.lock.json 未更新,但手动更改版本号会导致警告更改为表单中的错误:
NU1001 The dependency Microsoft.Extensions.Logging.Console >= 1.1.0 could not be resolved.
我正在使用 VS2015 Update 3 和 NuGet 3.5。
那么我的问题:
- 有没有办法强制 NuGet 更新项目引用,这样我就不会收到这些警告?
- 知道为什么会这样吗?
- 是否有可靠的解决方法(例如手动编辑某些文件)?
这是Update-Package的输出:
Retrieving package 'Microsoft.ApplicationInsights.AspNetCore 1.0.2' from 'nuget.org'.
Retrieving package 'Microsoft.AspNetCore.Mvc 1.1.0' from 'nuget.org'.
Retrieving package 'Microsoft.AspNetCore.Routing 1.1.0' from 'nuget.org'.
Retrieving package 'Microsoft.AspNetCore.Server.IISIntegration 1.1.0' from 'nuget.org'.
Retrieving package 'Microsoft.AspNetCore.Server.Kestrel 1.1.0' from 'nuget.org'.
Retrieving package 'Microsoft.Extensions.Configuration.EnvironmentVariables 1.1.0' from 'nuget.org'.
Retrieving package 'Microsoft.Extensions.Configuration.FileExtensions 1.1.0' from 'nuget.org'.
Retrieving package 'Microsoft.Extensions.Configuration.Json 1.1.0' from 'nuget.org'.
Retrieving package 'Microsoft.Extensions.Logging 1.1.0' from 'nuget.org'.
Retrieving package 'Microsoft.Extensions.Logging.Console 1.1.0' from 'nuget.org'.
Retrieving package 'Microsoft.Extensions.Logging.Debug 1.1.0' from 'nuget.org'.
Retrieving package 'Microsoft.Extensions.Options.ConfigurationExtensions 1.1.0' from 'nuget.org'.
Retrieving package 'Microsoft.NETCore.App 1.1.0' from 'nuget.org'.
Uninstalling NuGet package Microsoft.ApplicationInsights.AspNetCore.1.0.0.
Successfully uninstalled 'Microsoft.ApplicationInsights.AspNetCore.1.0.0' from WebApplication3
Installing NuGet package Microsoft.ApplicationInsights.AspNetCore.1.0.2.
Successfully installed 'Microsoft.ApplicationInsights.AspNetCore 1.0.2' to WebApplication3
Uninstalling NuGet package Microsoft.AspNetCore.Mvc.1.0.1.
Successfully uninstalled 'Microsoft.AspNetCore.Mvc.1.0.1' from WebApplication3
Installing NuGet package Microsoft.AspNetCore.Mvc.1.1.0.
Successfully installed 'Microsoft.AspNetCore.Mvc 1.1.0' to WebApplication3
Uninstalling NuGet package Microsoft.AspNetCore.Routing.1.0.1.
Successfully uninstalled 'Microsoft.AspNetCore.Routing.1.0.1' from WebApplication3
Installing NuGet package Microsoft.AspNetCore.Routing.1.1.0.
Successfully installed 'Microsoft.AspNetCore.Routing 1.1.0' to WebApplication3
Uninstalling NuGet package Microsoft.AspNetCore.Server.IISIntegration.1.0.0.
Successfully uninstalled 'Microsoft.AspNetCore.Server.IISIntegration.1.0.0' from WebApplication3
Installing NuGet package Microsoft.AspNetCore.Server.IISIntegration.1.1.0.
Successfully installed 'Microsoft.AspNetCore.Server.IISIntegration 1.1.0' to WebApplication3
Uninstalling NuGet package Microsoft.AspNetCore.Server.Kestrel.1.0.1.
Successfully uninstalled 'Microsoft.AspNetCore.Server.Kestrel.1.0.1' from WebApplication3
Installing NuGet package Microsoft.AspNetCore.Server.Kestrel.1.1.0.
Successfully installed 'Microsoft.AspNetCore.Server.Kestrel 1.1.0' to WebApplication3
Uninstalling NuGet package Microsoft.Extensions.Configuration.EnvironmentVariables.1.0.0.
Successfully uninstalled 'Microsoft.Extensions.Configuration.EnvironmentVariables.1.0.0' from WebApplication3
Installing NuGet package Microsoft.Extensions.Configuration.EnvironmentVariables.1.1.0.
Successfully installed 'Microsoft.Extensions.Configuration.EnvironmentVariables 1.1.0' to WebApplication3
Uninstalling NuGet package Microsoft.Extensions.Configuration.FileExtensions.1.0.0.
Successfully uninstalled 'Microsoft.Extensions.Configuration.FileExtensions.1.0.0' from WebApplication3
Installing NuGet package Microsoft.Extensions.Configuration.FileExtensions.1.1.0.
Successfully installed 'Microsoft.Extensions.Configuration.FileExtensions 1.1.0' to WebApplication3
Uninstalling NuGet package Microsoft.Extensions.Configuration.Json.1.0.0.
Successfully uninstalled 'Microsoft.Extensions.Configuration.Json.1.0.0' from WebApplication3
Installing NuGet package Microsoft.Extensions.Configuration.Json.1.1.0.
Successfully installed 'Microsoft.Extensions.Configuration.Json 1.1.0' to WebApplication3
Uninstalling NuGet package Microsoft.Extensions.Logging.1.0.0.
Successfully uninstalled 'Microsoft.Extensions.Logging.1.0.0' from WebApplication3
Installing NuGet package Microsoft.Extensions.Logging.1.1.0.
Successfully installed 'Microsoft.Extensions.Logging 1.1.0' to WebApplication3
Uninstalling NuGet package Microsoft.Extensions.Logging.Console.1.0.0.
Successfully uninstalled 'Microsoft.Extensions.Logging.Console.1.0.0' from WebApplication3
Installing NuGet package Microsoft.Extensions.Logging.Console.1.1.0.
Successfully installed 'Microsoft.Extensions.Logging.Console 1.1.0' to WebApplication3
Uninstalling NuGet package Microsoft.Extensions.Logging.Debug.1.0.0.
Successfully uninstalled 'Microsoft.Extensions.Logging.Debug.1.0.0' from WebApplication3
Installing NuGet package Microsoft.Extensions.Logging.Debug.1.1.0.
Successfully installed 'Microsoft.Extensions.Logging.Debug 1.1.0' to WebApplication3
Uninstalling NuGet package Microsoft.Extensions.Options.ConfigurationExtensions.1.0.0.
Successfully uninstalled 'Microsoft.Extensions.Options.ConfigurationExtensions.1.0.0' from WebApplication3
Installing NuGet package Microsoft.Extensions.Options.ConfigurationExtensions.1.1.0.
Successfully installed 'Microsoft.Extensions.Options.ConfigurationExtensions 1.1.0' to WebApplication3
Uninstalling NuGet package Microsoft.NETCore.App.1.0.1.
Successfully uninstalled 'Microsoft.NETCore.App.1.0.1' from WebApplication3
Installing NuGet package Microsoft.NETCore.App.1.1.0.
Successfully installed 'Microsoft.NETCore.App 1.1.0' to WebApplication3
Executing nuget actions took 729.79 ms
Time Elapsed: 00:00:08.2056394
【问题讨论】:
-
你试过
dotnet restore吗? (docs.microsoft.com/pl-pl/dotnet/articles/core/tools/…) 第二件事是你有最新的.Net Core。尝试从microsoft.com/net/download/core#/current下载并安装最新的 -
@J.Doe 我现在做了,它有效!我仍然不明白为什么在 NuGet 完成它的工作之后甚至需要它,但这是另一天的问题。将此作为答案提交,我会接受。
-
.NET Core for Visual Studio 2015 的工具只是一个预览,所以它不会轻易让一切正常工作。我个人的建议是仅使用
dotnet命令行,并避免使用任何可视化部分,例如 .NET Core 项目的 NuGet 包管理器。
标签: visual-studio visual-studio-2015 asp.net-core nuget .net-core