gpt4 book ai didi

c# - 如何获得实例化泛型的参数类型?

转载 作者:行者123 更新时间:2023-11-30 13:20:19 27 4
gpt4 key购买 nike

令我震惊的是我在互联网上没有找到关于这个问题的任何信息,但可能我正在寻找错误的词。这是我需要做的。

假设我有一个通用类型:List<string> 是为了简单起见。如何获取参数类型(在本例中为 typeof(string) )?

请记住,我需要从泛型类外部执行此操作(而不是在类方法内部,这是我在其他 SO 问题中看到的)。底线是我有一个通用类型的实例,我需要知道它的类型和它的参数类型(在上面的例子中,我想同时获得 typeof(List)typeof(string) ,而不是像 typeof(List<string>) 这样的东西)。当然,这必须在运行时完成。

感谢所有会回复的人。

最佳答案

听起来您要找的是 Type.GetGenericArguments() .您可以在相关实例的 Type 上调用它。它返回 Type ( to Eric Lippert's chagrin ) 数组。

关于c# - 如何获得实例化泛型的参数类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8828276/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com