使用反射获取通用实例泛型类型

时间:2011-06-15 14:29:04

标签: c# generics reflection

假设:

Type T = typeof(List<string>);

要求:

typeof(List<>) == SomeFunction(T)

很多时候,当我在某个类型上进行反思并希望找到返回某些类型列表的所有属性时...我需要上面显示的“SomeFunction”。我进行了搜索和搜索,但无法弄清楚如何从List<>获取List<string>。我可以使用T.GetGenericArguments(),但这只会返回string,所以这根本没有帮助。

1 个答案:

答案 0 :(得分:8)

typeof(List<string>).GetGenericTypeDefinition() == typeof(List<>)