Deixe-me dar um exemplo:
Tenho algumas definições genéricas de classe / interface:
interface IGenericCar< T > {...}Tenho outra classe / interface que quero relacionar com a classe acima, por exemplo:
interface IGarrage< TCar > : where TCar: IGenericCar< (**any type here**) > {...}
Basicamente, quero que meu IGarrage genérico seja dependente IGenericCar, independentemente de ser IGenericCar<int>ou IGenericCar<System.Color>, porque não tenho nenhuma dependência desse tipo.
Tdentro doIGarage<TCar>? Não consigo ver nenhuma possibilidade na opção2. A melhor solução seriaIGarage<TCar>encontrar o tipoTanalisando o tipoTCar.