我有一个通用方法定义如下
public T MyMethod<T>(extra params)
我的方法可以接收和返回单个实体类型,也可以接收和返回列表。如何确定传递的 T 是单个实体类型还是列表,在这种情况下如何获取内部类型 T1 的类型?
谢谢
我有一个通用方法定义如下
public T MyMethod<T>(extra params)
我的方法可以接收和返回单个实体类型,也可以接收和返回列表。如何确定传递的 T 是单个实体类型还是列表,在这种情况下如何获取内部类型 T1 的类型?
谢谢
您可以使用Type
类的方法来做到这一点:
var type = typeof(T);
if (type.IsGenericType && type.GetGenericTypeDefinition() == typeof(List<>)) {
var innerType = type.GetGenericArguments()[0];
}