Ich versuche, auf .NET 4.6 zu zielen und auch die neueste C # -Version zu nutzen, indem ich die C # -Sprachenversion auf 6 ändere.
Beim Kompilieren habe ich jedoch folgenden Fehler erhalten:
Fehler Ungültige Option '6' für / langversion; muss ISO-1, ISO-2, 3, 4, 5 oder Standard sein
Wenn ich die /langversion:6
Einstellung in Web.Config auf 5 aktualisiere , funktioniert dies.
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701">
Aber wie kann ich das beheben, ohne auf eine niedrigere Sprachversion zurückzugreifen?
Ich verwende Visual Studio 2015 Community Edition und habe .NET Framework 4.6 auch manuell installiert, falls es von Visual Studio 2015 nicht standardmäßig installiert wurde.
Das Projekt ist ein Standard-ASP.NET MVC-Vorlagenprojekt, das von Visual Studio 2015 erstellt wurde.
c#
.net
asp.net-mvc-5.2
.net-4.6
Rosdi Kasim
quelle
quelle
/langversion:6
...Antworten:
Achten Sie
Web.Config
beim Ändern der Framework-Version auf den "Typ" des Compilers in der Datei:für 4.5 und C # 5 -
für 4.6 und C # 6 -
Weitere Infos in diesem Forumsbeitrag
quelle
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701" />
Nur die Lösung zuAktualisieren Sie die folgenden NuGet-Pakete (je nachdem, welche installiert sind), um das Problem zu beheben:
quelle
1. Gehen Sie zu Projekt und wählen Sie Ihre Projekteigenschaften aus.
2 Wählen Sie Erstellen und klicken Sie auf die Schaltfläche Erweitert.
3.Wählen Sie die Standardversion der Sprachversion.
4. Speichern.
https://youtu.be/IP8feQeWqkk
quelle
Ich habe ein solches Verhalten festgestellt, wenn das Projekt nicht vollständig auf VS2015 aktualisiert wurde. Falls Sie die Lösung ab 2015 in VS2013 öffnen, wird dieser Fehler angezeigt
quelle
Öffnen Sie die NuGet Package Manager-Konsole und führen Sie den folgenden Befehl aus
Update-Paket Microsoft.CodeDom.Providers.DotNetCompilerPlatform -r
quelle
Siehe eine Antwort auf den seltsamen Kompilierungsfehler von ASP.NET! .
Wenn Sie Ihre C # -Sprache auf 5 herabstufen, wird das Problem nur maskiert. Sobald jemand eine C # 6-Funktion verwendet, wird Ihre Website / Ihr Projekt beschädigt und Sie werden immer noch Zeit damit verbringen, das Problem erneut zu beheben. Probieren Sie die Lösung im Link aus.
quelle
Ich hatte ein ähnliches Problem, als ich die Anwendung zum ersten Mal in Visual Studio 2019 lud. Das Aktualisieren des Nugets "Microsoft.CodeDom.Providers.DotNetCompilerPlatform" auf eine spätere Version hat den Trick für mich getan.
quelle