JetBrains Rider 2024.1 ヘルプ

コード検査: null 以外の値で成功する型チェックの代わりに null チェックを使用する

C# の is 演算子は、次の 2 つの場合に false を返します。

このインスペクションは、is の左側が常にテスト対象の型に代入可能な場合を報告します。このような場合、is は、左側が null の場合にのみ false に評価されます。型チェックを null チェックに置き換えることが推奨されます。これにより、ロジックは保持されますが、コードの読者は実際に何がテストされているかを理解できるようになります。

public static void Print(string str) { if (str is string) Console.WriteLine(str); }

意図された条件は null チェックではなく、型チェックであった可能性があることに注意してください。その場合は、コードを確認して根本的な問題を特定する必要があります。

関連ページ:

コードインスペクション設定を構成する

設計時コードインスペクションを構成する:デフォルトでは、JetBrains Rider はサポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかにかかわらず、コードインスペクションを特定の範囲でいつでも実行できます。「鉛筆」ウィジェットを使用して、エディターから直接インスペクション設定をすばやく調整するか、設定でより詳細な構成を行うことができます。を押すか、メニューから(W...

コード検査: オーバーライドされた GetHashCode は、'Object.GetHashCode()' を呼び出する

.NET では、は組み込みクラスで使用され、コレクション内のオブジェクトを効率的に検索します。をオーバーライドする場合、通常は、主にその等価性が基本等価性と同じでない場合に、特定のオブジェクトに適したより優れたハッシュ関数を提供することが目的です。オーバーライドで呼び出すことはできますが、基本実装では派生クラスの特定の状態とメンバー変数を認識しないため、通常は役に立ちません。カスタムオブジェクトに意味のある、適切に分散されたハッシュコードが提供されない可能性があります。をオーバーライドした場合...