Consider a piece of the code below:
public class A<T> { }
public class B<T> : A<T> { }
In such case:
var a = typeof(A<>).GenericTypeArguments.Length;
a
has the value 0
, which is not surprising. This, however, is somehow unexpected for me:
var b = typeof(B<>).BaseType.GenericTypeArguments.Length;
where b
has the value 1
. So it is closed using a non-existing type of name "T" and only doing GetGenericArguments
on it makes it open again. Why is that?
Aucun commentaire:
Enregistrer un commentaire