cześć
problem jest taki
mam stepy i chcę dodac je do kolekcji
Stepy sa generyczne
interface IStep<T>
{
void Enter(T data);
void Check(IChecker<T> checker);
void Exit();
}
//potem w kodzie chciałbym mieć takie coś
void StepRunner(IEnumerable<dynamic> steps /*to działa ale ja chciałbym aby było coś na kształt (IEnumerable<IStep<dynamic>>)*/,T data, (IChecker<T> checker)
{
for(var step in steps)
{
step.Enter(data);
step.Check(checker);
step.Exit();
}
}
udało mi się to zrobić za pomocą dynamic - ale nie podoba mi się to za bardzo bo tracę kontekst np tu Enter i f12 nie przejdzę do interfejsu, nie podgladne, nie zmieni mi się nazwa z automatu, f11 nie wchodzi w metodę itd
czy można jakoś zrobić kolekcję typu
List<IStep<?>> >