Je souhaite créer un projet de bibliothèque de classes avec Target Framework .NET Standard 2.0.
J'ai mis à jour mon Visual Studio 2017
vers la version 15.3
et dans le programme d'installation de Visual Studio, j'ai également vérifié .NET Framework 4.7 SDK
et .NET Framework 4.7 targeting pack
manuellement et les ai installés.
Il n'y a toujours pas d'option .NET Standard 2.0
dans la liste déroulante Target Framework de la fenêtre Projet/Application. J'ai donc changé la balise TargetFramework dans le fichier .csproj
manuellement en netstandard2.0
, mais après avoir essayé de construire, j'obtiens cette erreur:
Le SDK .NET actuel ne prend pas en charge le ciblage de .NET Standard 2.0. Vous pouvez cibler .NET Standard 1.6 ou une version inférieure ou utiliser une version de .NET SDK qui prend en charge .NET Standard 2.0.
On dirait que l'installation de la mise à jour VS2017 pour cette version spécifique n'a pas également installé le SDK .NET Core 2.0. Vous pouvez le télécharger ici .
Pour vérifier quelle version du SDK déjà installée, lancez
dotnet --info
à partir de la ligne de commande. Notez que s'il y a un fichier global.json
dans votre répertoire de travail actuel ou dans un répertoire ancêtre, cela annulera la version du SDK exécutée. (Ceci est utile si vous souhaitez appliquer une version particulière à un projet, par exemple.)
À en juger par les commentaires, certaines versions des mises à jour VS2017 do installent le SDK .NET Core. Je soupçonne que cela peut varier un peu avec le temps.
alors que les réponses ci-dessus n'ont pas résolu mon problème. Je l'ai finalement résolu en allant spécifiquement sur ce lien https://www.Microsoft.com/net/download/visual-studio-sdks et en téléchargeant le sdk requis pour Visual Studio. C'était vraiment déroutant et je ne comprends pas pourquoi mais cela a résolu mon problème
Pour moi, la solution a été de changer la version dans global.json
pour refléter celle installée.
Comme les autres ont dit la version peut être trouvé en cours d'exécution dotnet --info
dans cmd
Ce:
{
"projects": [ "src", "test" ],
"sdk": {
"version": "2.0.3"
}
}
Est devenu:
{
"projects": [ "src", "test" ],
"sdk": {
"version": "2.1.4"
}
}
Cela a fonctionné pour moi
Dans l'onglet "Workloads", cochez la case "Développement multi-plateformes .Net Core" et cliquez sur "Modifier".
N'oubliez pas de cocher "Outils de développement .NET Core 2.0" dans le menu de gauche.
J'avais déjà installé Asp Net Core auparavant, mais n'apparaissais pas sur mon Visual Studio, juste après mon installation à l'aide de l'installation de Visual Studio parue pour moi.
Je viens d’avoir cela avec 15.8.3 après la désinstallation de certains SDK de prévisualisation .NET Core 1.x, mon application ne compilait pas et affichait l’erreur.
Cela a été corrigé en installant la dernière version x86 du SDK, bien que je sois sous Windows 10 x64.
Je suppose que cela est dû au fait que VS 2017 est toujours un programme x86 et bien que les programmes fonctionnent en tant que x64, le compilateur recherchait un SDK x86 approprié
Je viens de traverser ce problème. Dans mon cas j'avais un script de travail
SET devenvPath=C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\devenv.exe
"%devenvPath%" mySolution.sln /Rebuild "DebugWithUT|AnyCpu" /Out mySolution.Build.log
Aujourd'hui, j'ai commencé à avoir cette erreur exacte. Mais maintenant je me souviens d'avoir installé VS2019 la veille. On dirait que cela a changé quelque chose pour VS2017. Je suis allé à VS2017 Update, j'ai installé la dernière version/mise à jour et cela a été corrigé.
J'ai eu le même problème et j'ai la dernière versionMicrosoft Visual Studio Community 2017 Version 15.7.3
Je viens de télécharger le dernier SDK 2.1 et plus de problème de ciblage. https://www.Microsoft.com/net/download/thank-you/dotnet-sdk-2.1.301-windows-x64-installer
Informations: Communauté Microsoft Visual Studio 2017 Version 15.7.3 VisualStudio.15.Release/15.7.3 + 27703.2026 Microsoft .NET Framework Version 4.7.03056
Version installée: Communauté
Outils C # 2.8.3-beta6-62923-07. Commit Hash: 7aafab561e449da50712e16c9e81742b8e7a2969 Composants C # utilisés dans l'EDI. Selon le type et les paramètres de votre projet, une version différente du compilateur peut être utilisée.
Outils Azure communs 1.10 Fournit des services communs à utiliser par Azure Mobile Services et les outils Microsoft Azure.
NuGet Package Manager 4.6.0 Gestionnaire de packages NuGet dans Visual Studio. Pour plus d'informations sur NuGet, visitez le site http://docs.nuget.org/ .
ProjectServicesPackage Extension 1.0 Informations détaillées sur l’extension Visual Studio de ProjectServicesPackage
ResourcePackage Extension 1.0 ResourcePackage Visual Studio Extension Informations détaillées
Outils Visual Basic 2.8.3-beta6-62923-07. Commit Hash: 7aafab561e449da50712e16c9e81742b8e7a2969 Composants Visual Basic utilisés dans l'EDI. Selon le type et les paramètres de votre projet, une version différente du compilateur peut être utilisée.
Adaptateur de débogage Visual Studio Forfait hôte 1.0 Couche d'interopérabilité pour l'hébergement d'adaptateurs de débogage Visual Studio dans Visual Studio
Visual Studio Tools pour Unity 3.7.0.1 Visual Studio Tools pour Unity
En fait, pour moi, cela s'est passé de manière opposée à d'autres réponses.
Je ai installé le dernier SDK .NET Core avant l'apparition du problème (3.0.0-preview2 dans mon cas) n'ayant pas la dernière version de Visual Studio (je ne sais pas si cela ferait toute différence).
Ainsi, la solution était juste pour désinstaller le dernier Kit de développement .NET Core SDK . (Ceci n'est pas parfait si vous en avez besoin, vous pouvez donc envisager de mettre à niveau Visual Studio vers la dernière moins ce problème en cours résolu).