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.
TwIGarage<TCar>? Nie widzę żadnej możliwości w opcji 2. Najlepszym rozwiązaniem byłobyIGarage<TCar>znalezienie typuTpoprzez analizę typuTCar.