【发布时间】:2013-02-05 15:47:14
【问题描述】:
我有这段代码
NullableConverter nullableConverter = new NullableConverter(type);
Type baseType = nullableConverter.UnderlyingType;
Object value = Convert.ChangeType(rule.Data, baseType);
constant = Expression.Constant(value);
在这种情况下,类型是decimal?,但它可以是任何可为空的类型。
我需要 value 的类型为 decimal?,而不是现在的类型 decimal。问题是 Convert.ChangeType 不能与可空类型一起正常工作。所以我先创建一个不可为空的。
如何将rule.Data 中包含的字符串转换为type?
【问题讨论】:
-
你的问题很不清楚。您是否在问如何将
string转换为decimal?? -
你能删除变量吗?这将使所涉及的类型更加明显。
-
我不知道类型,它都是通用的,没有一个 vars(我改变了)会有所帮助。在这种情况下,
type恰好是decimal?,rule.Data是一个字符串。
标签: c# type-conversion nullable