Visual Studio が Equals、GetHashCode を自動生成できるようになっていたので備忘のためにメモ。
==
、!=
演算子や IEquatable<T>
も生成できる。
助かる。
情報源
Generate Equals and GetHashCode method overrides in Visual Studio
Visual Studio 2017 を対象とした 2 年以上前の情報なのでこのあたりから提供されていたのか。。
Visual Studio で Equals および GetHashCode メソッドのオーバーライドを生成する
日本語の情報もあるな。。が、書いてしまったんで。
手順
- 対象の
クラス
にカーソルを移動して、キーボードでCtrl + .
を入力する。このとき、クラス名を選択 (反転) 状態にしないよう注意。 - もしくは、クラス名の行を右クリックして
クイック アクションとリファクタリング
をクリックするでも可。 - コンテキストメニューの
Equals および GetHashCode
もしくはEquals(object) を生成する
をクリックする。 - [メンバーの選択] ダイアログで、評価するメンバーを指定する。
- 必要に応じて
IEquatable<T> を実装する
、および演算子を実装する
をチェックする。 - [OK] ボタンをクリックする。
確認した環境
- Windows 10 Home 64 bit バージョン 2004
- Microsoft Visual Studio Community Edition 2019 Version 16.4.6