gpt4 book ai didi

c# - 如何在 conversionType 为可为空的 int 时使用 Convert.ChangeType()

转载 作者:太空狗 更新时间:2023-10-29 20:44:52 25 4
gpt4 key购买 nike

我的意思是,我想转换这个:

string a = 24;
Convert.ChangeType(a, typeof(decimal?))

但它会抛出一个错误。

更新 1:

我有一个 Type 对象,它可以是 decimal?,int?,.. 许多可为 null 的类型。然后使用 Type 对象,我需要将字符串值转换为类型对象。

最佳答案

看到一个很好的答案here :

public static T GetValue<T>(string value)
{
Type t = typeof(T);
t = Nullable.GetUnderlyingType(t) ?? t;

return (value == null || DBNull.Value.Equals(value)) ?
default(T) : (T)Convert.ChangeType(value, t);
}

例如:

string a = 24;
decimal? d = GetValue<decimal?>(a);

关于c# - 如何在 conversionType 为可为空的 int 时使用 Convert.ChangeType(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7313590/

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