gpt4 book ai didi

c# - 如何使用反射创建值类型的实例

转载 作者:太空狗 更新时间:2023-10-29 17:41:08 26 4
gpt4 key购买 nike

我想创建一个值类型的实例,例如 System.StringSystem.BooleanSystem.Int32 等。我得到类型的限定名称,如 System.String MyNamespace.Employee,我必须创建一个实例并返回.我使用 Activator.CreateInstanceFormatterServices.GetUninitializedObject 来创建实例。但是在值类型的情况下它会失败。对于值类型,我不能硬编码逻辑。我需要一种通用的方法来创建值类型和引用类型的实例。

最佳答案

你到底想做什么? FormatterServices.GetUninitializedObject主要用于序列化代码;除此之外,您不应该真正使用它。 听起来您可能只需要TypeConverter之类的东西,即(对于这些类型)

TypeConverter tc = TypeDescriptor.GetConverter(someType);
object obj = tc.ConvertFromString(s);

关于c# - 如何使用反射创建值类型的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1997815/

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