コードインスペクション: アクセスされていない位置プロパティ(private アクセシビリティ)
C# 9 record 構文は、 Equals()/GetHashCode()/ToString() 実装、プライマリコンストラクターパラメーターに対応するプロパティ、および Deconstruct() メソッドを含む、一連のメンバーを暗黙的に定義します。
これらすべての暗黙の定義を考慮に入れて、ReSharper はアクセスされていないレコードの位置プロパティを報告します。
class Test
{
record Person(
string Name,
int Age, // non-accessed positional property
object Tag
);
public void PrintName()
{
var (name, _, tag) = GetPerson();
Console.WriteLine(name);
}
private Person GetPerson() => new("Alex", 32, null);
}
class Test
{
record Person(
string Name,
object Tag
);
public void PrintName()
{
var (name, tag) = GetPerson();
Console.WriteLine(name);
}
private Person GetPerson() => new("Alex", null);
}
冗長な位置メンバーの削除を安全にするために、 未使用のプロパティを削除する クイックフィックス(Alt+Enter )は 安全な削除リファクタリング を呼び出して、すべてのレコード使用パターンをサポートします。 上記の例では、ReSharper はすべての C# 分解フォームにおける間接的な使用を認識し、そのような分解から対応する _ を削除できます。
2026 年 6 月 12 日