型チェックよりも 'null' チェックを優先します (IDE0150)

プロパティ
ルール ID IDE0150
タイトル 型チェックより null チェックを優先します
カテゴリ スタイル
Subcategory 言語規則 (式レベル基本設定)
該当言語 C#
[オプション] csharp_style_prefer_null_check_over_type_check

概要

このスタイル規則では、is not null を代わりに使用できるとき、is {type} ステートメントが使用されている場合にフラグを設定します。 同様に、is null に優先して is not {type} ステートメントが使用されている場合にもフラグを設定します。 is null または is not null を使用すると、コードの読みやすさが向上します。

オプション

オプションでは、規則を適用する動作を指定します。 オプションの構成の詳細については、「オプションの書式」を参照してください。

csharp_style_prefer_null_check_over_type_check

プロパティ 説明
オプション名 csharp_style_prefer_null_check_over_type_check
オプションの値 true 型チェックより null チェックを優先します。
false ルールを無効にします。
既定のオプションの値 true

// Violates IDE0150.
if (numbers is not IEnumerable<int>) ...

// Fixed code.
if (numbers is null) ...

警告を抑制する

単一の違反だけを抑制する場合は、ソース ファイルにプリプロセッサ ディレクティブを追加して無効にしてから、規則を再度有効にします。

#pragma warning disable IDE0150
// The code that's violating the rule is on this line.
#pragma warning restore IDE0150

ファイル、フォルダー、またはプロジェクトのルールを無効にするには、構成ファイルでその重要度を none に設定します。

[*.{cs,vb}]
dotnet_diagnostic.IDE0150.severity = none

すべてのコード スタイル規則を無効にするには、構成ファイルでカテゴリ Style の重要度を none に設定します。

[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none

詳細については、「コード分析の警告を抑制する方法」を参照してください。

関連項目