VisualStudio2022でnull許容コンテキストを無効化する

VS2022 はデフォルトで「null 許容コンテキスト」というものが有効化されています。

これが有効化されていると以下のような警告が表示されます。

警告 CS8600
Null リテラルまたは Null の可能性がある値を Null 非許容型に変換しています。

警告 CS8601
Null 参照代入の可能性があります。

警告 CS8603
Null 参照戻り値である可能性があります。

警告 CS8604 
'void Foo(T t)' 内のパラメーター 't' に Null 参照引数がある可能性があります。

警告 CS8618
null 非許容の フィールド 'xxxx' には、コンストラクターの終了時に
null 以外の値が入っていなければなりません。
フィールド を Null 許容として宣言することをご検討ください。

警告 CS8622
'Sample(..)' のパラメーター 'type1' の型における参照型の NULL 値の許容が、ターゲット デリゲート 
'type2' と一致しません。おそらく、NULL 値の許容の属性が原因です。

警告 CS8625
null リテラルを null 非許容参照型に変換できません。

上記は、あくまで一例ですが、こういった警告がごまんと出たりします。安全のために必要なのは理解しますが、これが本当に余計なお世話としか言えない場合があるため、必要ない場合は無効化します。

プロジェクトのプロパティを表示して、ビルドセクションにある「null 許容」を無効化します。

以下のように部分的に pragma で囲うことで無効化できますが、もともとnull 許容を有効化している場合あまり意味のある指定ではないような気がします。

#nullable disable warnings
// コード
#nullable restore warnings