Laissez-moi donner un exemple:
J'ai une définition générique de classe / interface:
interface IGenericCar< T > {...}
J'ai une autre classe / interface que je souhaite associer à la classe ci-dessus, par exemple:
interface IGarrage< TCar > : where TCar: IGenericCar< (**any type here**) > {...}
Fondamentalement, je veux que mon IGarrage générique dépende IGenericCar
, peu importe si c'est IGenericCar<int>
ou IGenericCar<System.Color>
, parce que je n'ai aucune dépendance à ce type.
T
dans leIGarage<TCar>
? Je ne vois aucune possibilité dans l'option 2. La meilleure solution serait deIGarage<TCar>
trouver le typeT
en analysant le typeTCar
.