ReSharper 2026.1 ヘルプ

コード検査: 値型と「null」の可能な比較

次のコードを考えてみましょう。

static void PrintItems<T>(List<T> items) { foreach (var item in items) { if (item != null) { Console.WriteLine(item.ToString()); } } }

最初は明らかではないかもしれませんが、実際には、T 型は値型(たとえば、struct または整数)になる可能性があります。これにより、比較が完全に無視されることになり、ユーザーが意図したものではない可能性があります。

ReSharper は、T のすべての可能な値のタイプをチェックする簡単な方法がないため、ここではクイックフィックスを提案しません。

これを解決するための 1 つのオプションは、T パラメーターをクラス型に制約することです。

static void PrintItems<T>(List<T> items) where T : class { //... }

ただし、そのような修正の後は、PrintItems<T>()すべての使用が総称制約を満たすことを確認する必要があります。

2024 年 2 月 11 日

関連ページ:

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

設計時コードインスペクションを構成する:デフォルトでは、ReSharper は、サポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかに関係なく、コードインスペクションは常に特定のスコープで実行できます。メインメニューからを選択するか、Alt+R O を押してから、左側のを選択します。設計時コードインスペクションを切り替えるには、コード分析を有効にするチェックボックスを使用し...

コードの問題のクイックフィックス

ReSharper を使用すると、設計時に検出されたほとんどのコード問題を即座に修復できます。ハイライトされたコードの問題でを押して、問題を解決したり最適以下のコードを改善したりするための適切な方法を選択するのと同じくらい簡単です。クイックフィックスの適用:クイックフィックスは、ハイライトされたコードの問題の左側にアクションインジケーターとして視覚的に表示されます。これらのインジケーターは、コードの問題にキャレットを置くと表示されます。次のインジケーターは、簡単な修正を意味します。エラー重大

使用箇所の検索のシンボル

このコマンドを使用すると、ソリューションおよび参照アセンブリ内の 1 つ以上のシンボルのすべての使用箇所を検索できます。シンボルの宣言またはその他の使用箇所から検索を開始できます。このコマンドは、ソリューションエクスプローラー、ファイル構造ウィンドウ、その他のツールウィンドウから呼び出すことができます。現在のコンテキストからシンボルの使用箇所を見つけるキャレットをエディターのシンボルに配置するか、ツールウィンドウでシンボルを選択します。以下のいずれか 1 つを実行します: メインメニューからを選択...