Ben <T> MyGeneric bir sınıf ve <dize>, MyGeneric <int>, MyGeneric < çift > ... vbC# Açık genel tür karşılaştırması. Jenerik <>, Jenerik <T>'un "üst öğesi" dir?
yerde görmeyi belirli verileri kontrol etmek zorunda MyGeneric türünden oluşturulan bazı önbelleğe veri var o MyGeneric ise, böyle kod:
if (data is MyGeneric<>) { // can't compile
// ... do something
}
veya
if (data.GetType() == typeof(MyGeneric<>)
|| typeof(MyGeneric<>).isAssginableFrom(data.GetType())) {
// no exception but none of these comparison works
}
veya bunu atmak istiyorum ama aptal Gerçekleştiren eserlerin bu tür:
if (data.GetType().Name.StartsWith(typeof(MyGeneric<>).Name) { ... }
gerçek veri tipi ve açık genel tip arasındaki ilişkileri kontrol etmek için bir yol var mı (MyGeneric <>)?