一个或多个包与 .NETStandard 不兼容,Version=v1.5

One or more packages are incompatible with .NETStandard,Version=v1.5

我创建了一个新的 .NET Core Class 库并添加了来自公司内部 Nuget 服务器的 Nuget 包。我开始收到以下错误:

Package XXXX is not compatible with netstandard1.5 (.NETStandard,Version=v1.5). Package XXXX 1.0 supports: net45 (.NETFramework,Version=v4.5) One or more packages are incompatible with .NETStandard,Version=v1.5.

我将 project.json 文件更新为如下所示,但同样的错误仍然存​​在。

{
  "version": "1.0.0-*",

  "dependencies": {
    "XXXXX": "1.0.0",
    "NETStandard.Library": "1.5.0-rc2-24027"
  },

  "frameworks": {
    "netstandard1.5": {
      "imports": [
        "dnxcore50",
        "portable-net45+win8"
      ]
    }
  }
}

有人对此有见解吗?

Tl;dr - 必须是 netstandard all the way down!

要在 .NET Core 项目中安装包,包 其所有依赖项必须与 netstandard1.X.

兼容

您的项目看起来像面向 netstandard1.5,但依赖于仅面向 net45 的包。解决此问题的唯一方法是替换依赖项,或将其更新为针对 netstandard.

的版本

在某些情况下,imports 将允许您在 .NET Core 应用程序中使用 Portable Class Library。这不是不兼容软件包的通用解决方案,而是一个临时修复程序,适用于已经针对较小 API.

的软件包