无法安装包'Microsoft.Extensions.DependencyInjection.Abstractions 2.0.0'。

13
我正在尝试在我的mvc应用程序中使用.Net Core来实现安全策略。我阅读的文章说我需要安装DependencyInjection,我通过VS 2017中的NuGet在进行安装。但是我遇到了以下错误:
“无法安装包'Microsoft.Extensions.DependencyInjection.Abstractions 2.0.0'。您正在尝试将此软件包安装到目标为“.NETFramework,Version=v4.5.2”的项目中,但该软件包不包含任何与该框架兼容的程序集引用或内容文件。”
这个版本是否对于.NET 4.5.2太新了?我应该使用哪个版本?
2个回答

15

如果您查看依赖项,可以看到它依赖于NetStandard 2.0。从此图表中,您可以看到必须使用 .NET 4.6.1 或更高版本才能与 NetStandard 2.0 兼容。

如果您使用的是 Microsoft.Extensions.DependencyInjection.Abstractions 1.1.1,那么它兼容 .NETStandard 1.0,该版本与 .NET 4.5 或更新版本兼容。


我想要跨平台,.Net Core 2.0和Microsoft.Extensions.DependencyInjection 2.2.0似乎可以兼容。 - Gerry

7
在nuget.com的包中,我可以看到版本2.0依赖于.NET Standard 2。.NET Standard 2兼容.NET Framework 4.6.1。此外,您必须安装.Net Core 2 SDK以在Visual Studio中作为支持平台使用.Net Standard 2。另外,只有Visual Studio 2017 Update 3得到支持。因此,您必须使用Visual Studio 2017 Update 3,并且将.Net Core 2 SDK和.NET Framework 4.6.1 作为项目的平台。最简单的选择是安装包的版本1.1.1。

谢谢!这对我很有用,让我免受了额外的挫败感。 - Robert

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