是否有方法测试T是否继承/实现了类/接口?
private void MyGenericClass<T> ()
{
if(T ... inherits or implements some class/interface
}
有一个名为Type.IsAssignableFrom()的方法。
检查是否T
继承/实现Employee
:
typeof(Employee).IsAssignableFrom(typeof(T));
如果你的目标是.NET Core,则该方法已移至TypeInfo:
typeof(Employee).GetTypeInfo().IsAssignableFrom(typeof(T).GetTypeInfo())