web-dev-qa-db-fra.com

Erreur Visual Studio Code et extension Omnisharp avec aperçu .Net Core SDK 3.0

Comment puis-je corriger l'erreur dans le projet .Net Core 3.0 dans Visual Studio Code?

J'ai téléchargé le SDK .NET Core 3.0 à partir du nouveau projet créé avec la nouvelle commande dotnet dans un dossier.

L'ouverture du projet avec Visual Studio Code donne l'erreur suivante:

[échec]: OmniSharp.MSBuild.ProjectLoader Le SDK .NET actuel ne prend pas en charge le ciblage de .NET Core 3.0. Ciblez .NET Core 2.2 ou une version antérieure, ou utilisez une version du SDK .NET qui prend en charge .NET Core 3.0. [avertir]: OmniSharp.MSBuild.ProjectManager Impossible de charger le fichier de projet 'c:\Users\Marco\source\Workspaces\WebDevelopment\Samples\hello-world\hello-world.csproj'. c:\Users\Marco\source\Workspaces\WebDevelopment\Samples\hello-world\hello-world.csproj C:\Program Files\dotnet\sdk\2.2.102\Sdks\Microsoft.NET.Sdk\target\Microsoft. NET.TargetFrameworkInference.targets (137,5): Erreur: le SDK .NET actuel ne prend pas en charge le ciblage de .NET Core 3.0. Ciblez .NET Core 2.2 ou une version antérieure, ou utilisez une version du SDK .NET qui prend en charge .NET Core 3.0.

[échec]: OmniSharp.MSBuild.ProjectManager Tentative de mise à jour du projet qui n'est pas chargé: c:\Users\Marco\source\Workspaces\WebDevelopment\Samples\hello-world\hello-world.csproj

8
Marco Duindam

Pas une solution, mais une solution de contournement pour moi:

J'ai OmniSharp travaillant sur du code visuel avec .NET CORE 3.0.100-preview3-010431 Le problème semble provenir de la version de MSBuild utilisée par OmniSharp.MSBuild.Discovery.MSBuildLocator.

Dans Visual Code, consultez votre journal OmniSharp:

enter image description here

Je ne suis pas sûr que vous aimerez la solution, mais dans le journal OmniShart, j'ai lu qu'il utilisait Visual Studio 2017 MSBuild, et comme j'ai rencontré un problème avec le projet .net Core Preview 3 dans VS 2017, j'ai donc installé Visual Studio Community 2019 RC. Mon code .NET CORE 3.0 fonctionne sur VS 2019, mais j'ai des problèmes avec OmniSharp dans Visual Code. Pour le faire fonctionner en code visuel, je renomme simplement C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MsBuild en C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild.disabled, et tout est OK sur Visual Code avec .NET Core.

    Located 3 MSBuild instance(s)
        1: Visual Studio Enterprise 2017 15.9.28307.344 - "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin"
        2: Visual Studio Community 2019 16.0.28714.193 - "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin"
        3: StandAlone 15.0 - "c:\Users\JPB\.vscode\extensions\ms-vscode.csharp-1.17.1\.omnisharp\1.32.8\msbuild\15.0\Bin"
    Registered MSBuild instance: Visual Studio Enterprise 2017 15.9.28307.344 - "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin"

Devient :

[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Located 2 MSBuild instance(s)
            1: Visual Studio Community 2019 16.0.28714.193 - "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin"
            2: StandAlone 15.0 - "c:\Users\JPB\.vscode\extensions\ms-vscode.csharp-1.17.1\.omnisharp\1.32.8\msbuild\15.0\Bin"
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Registered MSBuild instance: Visual Studio Community 2019 16.0.28714.193 - "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin"

Conclusion: Omnisharp semble avoir besoin d'un MSBuild qui prend en charge .net Core 3.0. Je ne le trouve nulle part ailleurs que dans VS 2019.

8
JPBlanc