Це синтаксичне запитання. У мене є загальний клас, який успадковується від загального базового класу і застосовує обмеження до одного з параметрів типу. Я також хочу, щоб похідний клас реалізував інтерфейс. За все життя я не можу зрозуміти правильний синтаксис.
Ось що я маю:
DerivedFoo<T1,T2> : ParentFoo<T1, T2> where T2 : IBar { ... }
Перше, що прийшло в голову:
DerivedFoo<T1,T2> : ParentFoo<T1, T2> where T2 : IBar, IFoo { ... }
Але це невірно, тому що T2 потребує реалізації як IBar, так і IFoo, а не DerivedFoo для реалізації IFoo.
Я трохи спробував гуглінг, використання кольорових точок, крапки з комою тощо, але я виявився коротким. Я впевнений, що відповідь головою ляпає просто.