我试图在Visual Studio 2015中安装一个将.NetStandard 2.0(Microsoft.Extensions.Logging.Abstractions)定位到Net 4.6.1项目的Nuget包。但是,虽然Frameworks应该兼容,但它并没有#39; t very work:
Install-Package : Could not install package 'Microsoft.Extensions.Logging.Abstractions 2.0.0'. You are trying to
install this package into a project that targets '.NETFramework,Version=v4.6.1', but the package does not contain
any assembly references or content files that are compatible with that framework. For more information, contact
the package author.
At line:1 char:1
+ Install-Package Microsoft.Extensions.Logging.Abstractions
我已按照此处列出的步骤进行操作:Entity Framework Core 2.0 on .NET 4.6.1
所以我已经安装了包" NETStandard.Library.NETFramework",并添加了
<PropertyGroup>
<PackageTargetFallback>netstandard2.0</PackageTargetFallback>
</PropertyGroup>
到csproj。但是,那里没有运气 - 仍然是同样的问题。
有没有办法在我的项目中安装NetStandard 2.0软件包(不升级VS或安装任何Net Core定位包等)?
由于
答案 0 :(得分:7)
有没有办法在我的项目中安装NetStandard 2.0软件包(不升级VS或安装任何Net Core定位包等)?
我不敢。就像Jon指出的那样,问题的原因是你正在使用Visual Studio 2015。
根据.NET Standard,.NET Standard 2.0支持.NET Framework 4.6.1(带有 .NET Core 2.0 SDK ):
所以我们需要安装.NET Core 2.0 SDK。微软关于.NET Core 2.0预览的每次通信都提到 Visual Studio 2017 ,所以我认为强烈建议使用Visual Studio 2017来使用.NET Core 2.0。
此外,NuGet包NETStandard.Library.NETFramework 已弃用。
因此,将.NetStandard 2.0 Nuget软件包安装到Net 4.6.1项目中,我强烈建议使用Visual Studio 2017与.NET Core 2.0一起使用。
希望这有帮助。
答案 1 :(得分:6)
使用以下方法支持引用.NET Standard 2.0软件包:
使用.NET Standard 2.0库时,仍然存在很少的错误,特别是在混合.NET Standard&lt; 2.0和2.0库,但这些更新提供了基本的支持。