Erreur Option invalide ‘6’ pour / langversion; doit être ISO-1, ISO-2, 3, 4, 5 ou par défaut

J’essaie de cibler .NET 4.6 et de tirer parti de la dernière version de C # en changeant la version du langage C # en 6.

Cependant, lors de la compilation, j’ai eu cette erreur:

Erreur Option invalide ‘6’ pour / langversion; doit être ISO-1, ISO-2, 3, 4, 5 ou par défaut

Si je mets à jour le /langversion:6 dans le paramètre Web.Config sur 5, cela fonctionne,

     

Mais comment puis-je résoudre ce problème sans avoir recours à une version linguistique inférieure?

J’utilise Visual Studio 2015 Community Edition et j’ai également installé manuellement .NET Framework 4.6 au cas où il ne serait pas installé par défaut par Visual Studio 2015.

Le projet est un projet de modèle ASP.NET MVC standard créé par Visual Studio 2015.

Faites attention au “type” du compilateur dans le fichier Web.Config , lors de la modification de la version de Framework:

pour 4.5 et C # 5 –

 type="Microsoft.CSharp.CSharpCodeProvider... 

pour 4.6 et C # 6 –

 type="Microsoft.CodeDom.Providers.DotNetComstackrPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetComstackrPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 

Plus d’infos dans ce post du forum

Mettez à jour les packages NuGet suivants (quel que soit installé) pour résoudre le problème:

  • Microsoft.CodeDom.Providers.DotNetComstackrPlatform
  • Microsoft.Net.Comstackrs

1. Accédez à Projet et sélectionnez vos propriétés de projet.

2 Sélectionnez Créer et cliquez sur le bouton Avancé.

3.Sélectionnez Langue par défaut.

4. sauvegarder.

https://youtu.be/IP8feQeWqkk

J’ai rencontré un tel comportement si le projet n’était pas entièrement mis à niveau vers VS2015. Si vous ouvrez une solution à partir de 2015 dans VS2013 – vous obtiendrez cette erreur

Voir une réponse à ASP.NET erreur de compilation étrange! .

La rétrogradation de votre langage C # à 5 ne fait que masquer le problème, dès que quelqu’un utilise une fonctionnalité C # 6, votre site Web / projet se brise et vous perdrez du temps à le réparer. Essayez la solution dans le lien.