ReSharper 2026.3 Help

コードインスペクション:ハッシュコードを計算するには HashCode.Combine を使用してください

このインスペクションは、一時的な値タプルを作成し、そのタプルに対して GetHashCode() を呼び出すハッシュコード計算を報告します。 System.HashCode が利用可能な場合、 HashCode.Combine(...) は同じ意図を直接表現し、一時的なタプルの使用を避けられます。 インスペクションは、最大 8 コンポーネントまでのタプルを含む ValueTuple.GetHashCode() 呼び出しについて報告されます。 より大きいタプルの場合、すべてのコンポーネントを含めたハッシュコード計算を使用してください。

サンプル

using System; public sealed class Customer(int id, string name) { public override int GetHashCode() { return (id, name).GetHashCode(); } }
using System; public sealed class Customer(int id, string name) { public override int GetHashCode() { return HashCode.Combine(id, name); } }

クイックフィックス

ValueTuple.GetHashCode() 呼び出しを HashCode.Combine(...) に置き換えてください。 タプル要素名はハッシュコードに影響せず、置換には含まれません。

2026 年 11 月 6 日