0

我有一个通用方法定义如下

public T MyMethod<T>(extra params)

我的方法可以接收和返回单个实体类型,也可以接收和返回列表。如何确定传递的 T 是单个实体类型还是列表,在这种情况下如何获取内部类型 T1 的类型?

谢谢

4

1 回答 1

1

您可以使用Type类的方法来做到这一点:

var type = typeof(T);
if (type.IsGenericType && type.GetGenericTypeDefinition() == typeof(List<>)) {
    var innerType = type.GetGenericArguments()[0];
}
于 2012-04-04T01:35:55.597 回答