プロジェクト全体で C# 8.0 の Null 許容参照型機能を有効にする方法 質問する

プロジェクト全体で C# 8.0 の Null 許容参照型機能を有効にする方法 質問する

によるC# 8 発表ビデオ「null 許容参照型」機能はプロジェクト全体に対して有効にできます。

しかし、プロジェクトでこれを有効にするにはどうすればよいでしょうか? Visual Studio 2019 Preview 1 のプロジェクト プロパティ ウィンドウには、新しい適切なオプションは見つかりませんでした。

.csprojC# 言語バージョンを 8.0 に変更した場合、「レガシー」プロジェクトで有効にできますか?

ベストアンサー1

プロジェクト内のすべてのコードに対して Null 許容参照型を有効にするには、その.csprojファイルに次のコードを追加します。

<PropertyGroup>
  <Nullable>enable</Nullable>
</PropertyGroup>

または、プロジェクトプロパティUIを開き、ヌル可能必要なオプションを選択します。

ここに画像の説明を入力してください


ソリューション内のすべてのプロジェクトでこれを有効にするには、プロパティをDirectory.Build.props代わりにファイルを使用してください。このようなファイルを使用して、複数のプロジェクトにわたって他のプロパティを指定することもできます。


より前のバージョンの .NET をターゲットにしている場合は、 C# 8 で Null 許容参照型が追加されたため、 を 8 以上にnetcoreapp3.0設定する必要があります。LangVersion

<PropertyGroup>
  <Nullable>enable</Nullable>
  <LangVersion>8.0</LangVersion>
</PropertyGroup>

古いバージョンの Visual Studio の場合:

  • 少なくともVS 16.0を使用する必要があります
  • 16.0 プレビュー 1 では、NullableReferenceTypesに設定しますtrue
  • 16.0 プレビュー 2 から 16.1 では、NullableContextOptionsに設定しますenable
  • 16.2 プレビュー 1 以降では、Nullable上記のように使用します。

おすすめ記事