软件包与netcoreapp2.0

时间:2017-09-04 23:43:06

标签: c# .net visual-studio

今天又出现了这个错误。 Visual Studio无法识别Microsoft.AspNetCore.All中的大多数软件包,但我也遇到了问题:

  • Microsoft.Extensions.Logging.Debug
  • Microsoft.VisualStudio.Web.CodeGenerators.Mvc
  • Microsoft.EntityFrameworkCore.Tools.DotNet

每个包的错误信息都是这样的:

  
    

Microsoft.VisualStudio.Web.CodeGenerators.Mvc 2.0.0软件包与netcoreapp2.0(.NETCoreApp,Version = v2.0)不兼容。 Microsoft.VisualStudio.Web.CodeGenerators.Mvc 2.0.0软件包支持:netstandard2.0(.NETStandard,Version = v2.0)

  

我在执行以下操作之前通过了此问题:

  • 将VS更新至15.3.1版
  • 将SDK更新到2.0版

现在,我已将NuGet.Commandline更新为4.3,但问题仍然存在。

我也收到了这个警告:

  
    

无法解决“System.Collections.NonGeneric,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”和“System.Collections.NonGeneric,Version = 4.0.1.0,Culture = neutral”之间的冲突,PublicKeyToken = b03f5f7f11d50a3a“。 “System.Collections.NonGeneric,Version = 4.1.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”将被任意选择。应用程序D:\ Visual Studio \ MSBuild \ 15.0 \ Bin \ Microsoft.Common.CurrentVersion.targets 1964

  

我将研究其他任何更新?欢迎任何帮助。感谢

4 个答案:

答案 0 :(得分:8)

如果您使用的是dotNET CLI,则只需运行此命令

即可
dotnet nuget locals all --clear

答案 1 :(得分:5)

通过将Visual Studio更新到版本15.3.3

来解决

在aspnetcore2.0稳定之前,似乎会经常发生这种情况。

答案 2 :(得分:0)

我通过清除global-packages文件夹解决了该问题。运行:

$ nuget locals global-packages -clear 

$ dotnet nuget locals global-packages --clear

答案 3 :(得分:0)

如果有人在 Azure DevOps 中运行管道(构建)时遇到此错误或类似错误,则有不同的修复方法。为了修复管道,我们必须添加一个 NuGet tool installer 任务,强制当前构建使用 NuGet >= 5.8 版本。

这是任务的截图: enter image description here

作为完整参考,以下是我们在 Azure DevOps 管道上收到的错误消息:

<块引用>

错误 G:...\ProjectName.Test.csproj 包 Moq 4.12.0 与 netcoreapp2.2 (.NETCoreApp,Version=v2.2) 不兼容。包 Moq 4.12.0 支持: - net45 (.NETFramework,Version=v4.5)