这个问题在这里已经有了答案:
Check if a class is derived from a generic class
(16 个答案)
7年前关闭。
给定一个通用类定义 BaseClass<T>
,是否可以测试这种情况?if (myvar is BaseClass<>)
我想知道 myvar 是否派生自泛型类,但我不知道(或关心)什么 T
可能。
我认为答案是否定的……我的后备计划是通过 myvar.GetType().ToString().Contains("BaseClass<")
, 或者其他的东西。
最佳答案
像这样:
if (myVar.GetType().IsGenericType
&& myVar.GetType().GetGenericTypeDefinition() == typeof(BaseClass<>))
关于c# - 确定 myinstance 是否为 Generic<T>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6784293/