我创建了一个新的.NET Core类库,并从内部公司Nuget服务器添加了一个Nuget包。我开始收到以下错误:
包XXXX与netstandard1.5不兼容 (.NETStandard,版本= 1.5版)。包XXXX 1.0支持:net45(.NETFramework,Version = v4.5)一个或多个软件包与.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"
]
}
}
}
有没有人对此有所了解?
答案 0 :(得分:11)
Tl; dr - 必须是netstandard
all the way down!
要在.NET Core项目中安装软件包,和软件包的所有依赖项必须与netstandard1.X
兼容。
您的项目似乎定位netstandard1.5
,但取决于仅定位net45
的程序包。解决此问题的唯一方法是替换依赖项,或将其更新为以netstandard
为目标的版本。
在某些情况下,imports
将允许您在.NET Core应用程序中使用Portable Class Library。对于不兼容的软件包,这不是一般的解决方法,而是一个临时修复,适用于已经针对较小API的软件包。