JetBrains Rider 2024.1 ヘルプ

コード検査: ジェネリクス型の静的フィールドまたは自動プロパティ

大多数の場合、ジェネリクス型で静的フィールドまたは自動プロパティを持つことはエラーの兆候です。この理由は、ジェネリクス型の静的メンバーは、異なる密接に構築された型のインスタンス間で共有されないためです。これは、public static string MyProp { get; set; } を持つジェネリクスクラス MyGeneric<T> では、MyGeneric<int>.MyPropMyGeneric<string>.MyProp の値が完全に異なる独立した値を持つことを意味します。

異なる汎用引数を持つインスタンス間で静的フィールドを共有する必要がある場合は、静的メンバーを格納する非汎用基本クラスを定義し、ジェネリクス型をこの型から継承するように設定します。