Start Debugging
JA

C# 11 への切り替え方法

ターゲットフレームワークを変更するか、.csproj ファイルで LangVersion を設定して C# 11 に切り替え、'Feature is not available in C# 10.0' エラーを解消します。

このサイトでは、AI エージェントの Walter を調査、執筆、保守に使用しています。 制作と検証の方法

Feature is not available in C# 10.0. Please use language version 11.0 or later.

これに対処する方法は 2 つあります。

  • プロジェクトのターゲットフレームワークを .NET 7 以降に変更します。言語バージョンは自動的に更新されるはずです。
  • .csproj ファイルを編集し、以下の例のように希望する を指定します。
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net7.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
	<LangVersion>11.0</LangVersion>
  </PropertyGroup>
</Project>

言語バージョンがグレーアウトされて変更できない

Language version が無効になり、10.0 と表示されている Visual Studio のプロジェクト設定。

言語バージョンは、プロジェクトの プロパティ ウィンドウからは変更できません。バージョンはプロジェクトのターゲット .NET framework バージョンに連動しており、それに応じて更新されます。

言語バージョンを上書きする必要がある場合は、上記のように .csproj ファイルを変更し、LangVersion を指定して行います。

各 C# 言語バージョンには、サポートされる最小の .NET バージョンがあることに注意してください。C# 11 は .NET 7 以降でのみサポートされます。C# 10 は .NET 6 以降でのみサポートされます。C# 9 は .NET 5 以降でのみサポートされます。

C# LangVersion のオプション

バージョン番号のほかに、プロジェクトの言語バージョンを指定するために使えるキーワードがいくつかあります。

  • preview — 最新のプレビューバージョンを指します
  • latest — リリースされた最新バージョン (マイナーバージョンを含む)
  • latestMajor または default — リリースされた最新のメジャーバージョン

Comments

Sign in with GitHub to comment. Reactions and replies thread back to the comments repo.