Podam przykład:
Mam ogólną definicję klasy / interfejsu:
interface IGenericCar< T > {...}
Mam inną klasę / interfejs, który chcę powiązać z klasą powyżej, na przykład:
interface IGarrage< TCar > : where TCar: IGenericCar< (**any type here**) > {...}
Zasadniczo chcę, aby mój ogólny IGarrage był zależny IGenericCar
, niezależnie od tego, czy jest, IGenericCar<int>
czy IGenericCar<System.Color>
, ponieważ nie mam żadnej zależności od tego typu.
T
wIGarage<TCar>
? Nie widzę żadnej możliwości w opcji 2. Najlepszym rozwiązaniem byłobyIGarage<TCar>
znalezienie typuT
poprzez analizę typuTCar
.