我有一个名为 MyGeneralClass 的通用类:
public MyGeneralClass<T> {
public List<T> Data {get; set;}
}
我还有另一种方法需要使用它:
public void GetData(Type type) {
}
我像这样使用
GetData
:GetData(typeof(MyGeneralClass<person>));
所以我的问题是,如何在
T
方法中找到 person
的类型(在本例中为 GetData
),我无法更改 GetData
的参数,但我可以更改它的实现。有没有人对此有任何想法? 最佳答案
通过反射:
if(type.IsGenericType &&
type.GetGenericTypeDefinition() == typeof(MyGeneralClass<>))
{
Type firstArg = type.GetGenericArguments()[0];
}
关于c# - 获取 class<T> 的通用类型 use Type of Type,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9157021/