英語で読む

次の方法で共有


コンパイラ エラー CS1617

LangVersion に対するオプション 'option' は無効です。 サポートされる値を表示するには、<LangVersion>?</LangVersion> を使用してください。

このエラーは、LangVersion コマンド ライン スイッチまたはプロジェクト設定を使用し、有効な言語オプションを指定しなかった場合に発生します。 このエラーを解決するには、コマンド ライン構文またはプロジェクト設定を確認し、表示されたオプションのいずれかに変更します。

たとえば、 csc -langversion:ISO でコンパイルすると、エラー CS1617 が生成されます。

-langversion の有効な値

言語バージョンの有効な値は、使用している .NET のバージョンによって異なります。 どの言語バージョンがどのバージョンの .NET で使用できるかについての詳細については、言語バージョンの規則を参照してください。 新しい言語バージョンを使用しようとしてこのエラーが発生する場合は、低い言語バージョンにダウングレードするか、.NET SDK をその言語バージョンをサポートするバージョンに更新します。

次の表は、-langversion の現在の有効な値を示しています。

説明
preview コンパイラは、最新のプレビュー バージョンの有効な言語構文をすべて受け入れます。
latest コンパイラは、最新リリース バージョンのコンパイラ (マイナー バージョンを含む) の構文を受け入れます。
latestMajor
または default
コンパイラは、最新リリースのメジャー バージョンのコンパイラの構文を受け入れます。
13.0 コンパイラが受け入れるのは C# 13 以下に含まれている構文だけです。
12.0 コンパイラは、C# 12 以下に含まれている構文のみを受け入れます。
11.0 コンパイラは、C# 11 以下に含まれている構文のみを受け入れます。
10.0 コンパイラは、C# 10 以下に含まれている構文のみを受け入れます。
9.0 コンパイラは、C# 9 以下に含まれている構文のみを受け入れます。
8.0 コンパイラは、C# 8.0 以下に含まれている構文のみを受け入れます。
7.3 コンパイラは、C# 7.3 以下に含まれている構文のみを受け入れます。
7.2 コンパイラは、C# 7.2 以下に含まれている構文のみを受け入れます。
7.1 コンパイラは、C# 7.1 以下に含まれている構文のみを受け入れます。
7 コンパイラは、C# 7.0 以下に含まれている構文のみを受け入れます。
6 コンパイラは、C# 6.0 以下に含まれている構文のみを受け入れます。
5 コンパイラは、C# 5.0 以下に含まれている構文のみを受け入れます。
4 コンパイラは、C# 4.0 以下に含まれている構文のみを受け入れます。
3 コンパイラは、C# 3.0 以下に含まれている構文のみを受け入れます。
ISO-2
または 2
コンパイラは、ISO/IEC 23270:2006 C# (2.0) に含まれている構文のみを受け入れます。
ISO-1
または 1
コンパイラは、ISO/IEC 23270:2003 C# (1.0/1.2) に含まれている構文のみを受け入れます。