Pau*_*Ash 5 c# reflection templates types
我已经四处寻找这个有一段时间了。我想知道如何获取传递到创建列表的模板类型。例如。
List<string> listOfStrings = new List<string>();
Run Code Online (Sandbox Code Playgroud)
我如何从中获取字符串类型?我知道如何使用类型来获取字段并查找列表类型,但不知道其中的模板。
在这种情况下,你可以这样得到它
Type genericType = listOfStrings.GetType().GetGenericArguments()[0];
Run Code Online (Sandbox Code Playgroud)
请注意,如果您在非泛型类型上尝试此操作,则会失败,因为 GetGenericArguments 数组的长度将为 0,但您当然可以采取措施来控制数组的长度。