答え1
8.0 の機能を使用すると、電球によってプレビューを有効にすることができます。
Visual Studio 内の電球は、プレビュー Visual Studio ビルドでのみ使用できます。16.1 などのリリース ビルドには、その特定の機能はありません。C# 8.0 言語サポートを有効にすることは 16.1 の機能であり、以前はプレビュー ビルド内でテストされていました (そのため、電球があります)。
C# コンパイラは、プロジェクトのターゲット フレームワークに基づいて既定の言語バージョンを決定します。プロジェクトが、対応するプレビュー言語バージョンを持つプレビュー フレームワークをターゲットとしている場合、使用される言語バージョンはプレビュー言語バージョンです。プロジェクトがプレビュー フレームワークをターゲットとしていない場合は、使用される言語バージョンは最新のマイナー バージョンです。たとえば、.NET Core 3.0 のプレビュー期間中、netcoreapp3.0 または netstandard2.1 (両方ともプレビュー) をターゲットとするすべてのプロジェクトは、C# 8.0 言語 (これもプレビュー) を使用します。リリースされたバージョンをターゲットとするプロジェクトは、C# 7.3 (最新のリリース バージョン) を使用します。この動作は、.NET Framework をターゲットとするすべてのプロジェクトが最新バージョン (C# 7.3) を使用することを意味します。
ソース:C#言語バージョンを選択する
プレビュー機能を使用する場合は、それらを有効にする必要があるというメッセージが表示されます。私が見つけた唯一の設定には、「.NET Core SDK のプレビューを使用する」を有効にするチェックボックスがありますが、有効になりません。
.csproj ファイルに次の XML 要素を追加して、言語バージョンを設定できます。
<PropertyGroup>
<LangVersion>latest</LangVersion>
</PropertyGroup>
Visual Studio 2019 16.1 内から実行することもできます。
Visual Studio でバージョンを設定できます。ソリューション エクスプローラーでプロジェクト ノードを右クリックし、[プロパティ] を選択します。[ビルド] タブを選択し、[詳細設定] ボタンを選択します。ドロップダウンでバージョンを選択します。次の画像は、「最新」設定を示しています。
ソース:
また、.NET Core SDKのプレビューを使用できるようにするプレビュー機能が有効になっていることを確認する必要があります。