rksoftware

Visual Studio とか C# とかが好きです

Visual Studio 2019 で C# の言語バージョンを指定する

C# の言語バージョンは最新のメジャーバージョンから変えることがほとんどないのですが、この度 Visual Studio 2019 で指定ができないことを認識しました。

言語バージョンを変えられない
f:id:rksoftware:20191017210827j:plain

試してみたら次の手順で変更できました。

.csproj ファイルを開いて
f:id:rksoftware:20191017210859j:plain

LangVersion タグを追加します。

追加前

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.0</TargetFramework>
  </PropertyGroup>
</Project>

追加後

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.0</TargetFramework>
    <LangVersion>6.0</LangVersion>
  </PropertyGroup>
</Project>

ここでは <LangVersion>6.0</LangVersion> と C# 6 を指定しました。

コードを確認すると、期待通り C# 7.0 と C# 8 のコードがエラーになりました。 f:id:rksoftware:20191017210950j:plain