次のように設定されたクラスがあります。
public class Strategy
{
public readonly string Name;
public readonly int Age;
public Strategy(string Name, int Age)
{
this.Name = Name;
this.Age = Age;
}
public static readonly Strategy CoolStrategy = new Strategy("Super Awesome", 24);
public static readonly Strategy LameStrategy = new Strategy("Work Harder!", 14);
}
次のようなことが言えるリフレクションを使用して拡張機能を使用できるようにしたい:
Strategy[] CurrentStrategies = typeof(Strategy).GetStaticInstances<Strategy>();
そして、このクラス内にさらに静的戦略を追加すると、この拡張機能はそれらの配列を返します。したがって、この場合、CoolStrategy と LameStrategy を含む配列が返されます。
これにより、クラスにインスタンスを追加するだけで、配列を取得できる他の場所を持つことができます。
何か案は?