2017-09-01 4 views
6

Ich habe ein guten alt .NET Framework 4.7Klassenbibliothek in Visual Studio 2015 derzeit Microsoft.Extensions.Configuration NuGet package version 1.1.2 verwenden. Ich versuche, dies zu version 2.0 zu aktualisieren, aber ich bin immer diese Fehlermeldung:So aktualisieren zu .NETStandard 2.0 NuGet Paket

Microsoft.Extensions.Configuration 2.0.0'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.7', 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.

Ich sehe, dass die neue Version unterstützt nur .NETStandard 2.0. Muss ich mein gesamtes Projekt in konvertieren? .NET Core oder .NET Standard in Visual Studio 2017?

+0

Haben Sie die NuGet Bits in VS2015 aktualisiert installieren müssen, wie vorgeschlagen https://blog.nuget.org/20170815/Whats-nu-in-NuGet -mit-VS2017-15-3.html? –

Antwort

3

Ja, Sie müssen Ihr Projekt in .Net-Standard 2.0 konvertieren, um das Microsoft.Extensions.Configuration 2.0.0-Paket zu verwenden.

Überprüfen Sie den folgenden Link für .Net-Standard 2.0 unterstützt .NET Framework Version ab jetzt das, .Net-Standard 2.0 unterstützt nur bis zu NET Framework 4.6.1

.Net standard 2.0 supported api

+0

Geht das von jetzt an so oder ist es nur dieses Paket? – dhrm

+0

Höchstwahrscheinlich. :(Weil der .net-Standard die zugrundeliegende allgemeine Bibliothek für alle anderen Versionen sein wird, um auf diesen Link zu bauen, https://blogs.msdn.microsoft.com/dotnet/2016/09/26/introducing-net-standard/ – Sriram

+3

Da .NET 4.6.1 .NET Standard 2.0 unterstützt, bedeutet dies, dass 4.7 auch das Paket verwenden kann.Die Fehlermeldung zeigt an, dass eine alte Version von VS/NuGet/SDK verwendet wurde, um das Paket zu aktualisieren (siehe meine Antwort) –

6

.NET Framework-Versionen ab 4.6.1 unterstützen .NET Standard 2.0 und höher, jedoch nur bei Verwendung neuer Tools. Stellen Sie sicher, dass Sie auf VS 2017, Version 15.3.0 oder höher, aktualisieren und das .NET Core SDK 2.0.0 installiert haben und dass global.json in der Verzeichnishierarchie Ihrer Lösung keine niedrigere SDK-Version festlegt.

Sie können auch die .NET-Core-Workload in VS 2017

+0

Danke, ein Upgrade auf VS 2017 hat mein Problem gelöst Warum macht es einen Unterschied, VS 2017 im Vergleich zu 2015 zu verwenden? – dhrm

+0

Aus irgendeinem Grund kann ich nicht mit Msbuild (Version 15.3.3) mit der gleichen Ausnahme, nur von VS 2017 (15.3.3) Wissen Sie warum? – dhrm

+0

Haben Sie den .NET Core-Arbeitsablauf ("plattformübergreifend") installiert? Er ist derzeit erforderlich, da er die erforderliche Msbuild-Logik enthält, die dafür erforderlich ist. –

Verwandte Themen