ขอยกตัวอย่าง:
ฉันมีนิยามคลาส / อินเทอร์เฟซทั่วไป:
interface IGenericCar< T > {...}
ฉันมีคลาส / อินเทอร์เฟซอื่นที่ฉันต้องการเชื่อมโยงกับคลาสด้านบนเช่น:
interface IGarrage< TCar > : where TCar: IGenericCar< (**any type here**) > {...}
โดยพื้นฐานแล้วฉันต้องการให้ IGarrage ทั่วไปของฉันขึ้นอยู่กับIGenericCar
ไม่ว่าจะเป็นIGenericCar<int>
หรือIGenericCar<System.Color>
เพราะฉันไม่มีการพึ่งพาประเภทนั้นก็ตาม
T
ในIGarage<TCar>
? ฉันไม่เห็นความเป็นไปได้ใด ๆ ใน option2 ทางออกที่ดีที่สุดจะเป็นอย่างไรถ้าIGarage<TCar>
พบประเภทตามประเภทของการวิเคราะห์T
TCar