コード検査: 'ArgumentException.ThrowIfNullOrEmpty/ThrowIfNullOrWhiteSpace' を使用する
.NET 8.0 以降、ArgumentException クラスは引数の検証を簡素化するために、静的メソッド ThrowIfNullOrEmpty() と ThrowIfNullOrWhiteSpace() を提供します。
このインスペクションは、手動で null または空文字列 / 空白文字のチェックを行った後に ArgumentException 例外をスローする処理を特定し、より簡潔で読みやすい静的メソッドに置き換えることを提案しています。これらのメソッドは、定型コードを削減するだけでなく、無効な引数に対して例外をスローする一貫した方法も提供します。
この簡易修正では、元のチェックに応じて、if ステートメントと throw 式を ArgumentException.ThrowIfNullOrEmpty() または ArgumentException.ThrowIfNullOrWhiteSpace() への単一の呼び出しに置き換えます。
関連ページ:
コードインスペクション設定を構成する
設計時コードインスペクションを構成する:デフォルトでは、ReSharper は、サポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかに関係なく、コードインスペクションは常に特定のスコープで実行できます。メインメニューからを選択するか、Alt+R O を押してから、左側のを選択します。設計時コードインスペクションを切り替えるには、コード分析を有効にするチェックボックスを使用し...
コード検査: 短命の「HttpClient」
このインスペクションは、メソッド内やブロック内など、短命なスコープ内でがインスタンス化されるケースを識別します。はを実装していますが、一度インスタンス化すればアプリケーションのライフサイクル全体を通して再利用されるように設計されています。リクエストごとに新しいインスタンスを作成すると、ソケットが枯渇する可能性があります。これは、が破棄された後でも、基盤となるソケットがオペレーティングシステムによってすぐに解放されない(状態のままになる)ためです。public class Connection {...