我的数据库是Oracle。我使用Dapper 1.13,它抛出一个异常Error parsing column 3 (LATITUDE=39.2330 - Decimal)
。 LATITUDE是我实体中的double?
类型。
请帮帮我。
由于
答案 0 :(得分:7)
il.Emit(OpCodes.Ldtoken, unboxType);
为:
il.Emit(OpCodes.Ldtoken, Nullable.GetUnderlyingType(unboxType) ?? unboxType);
基本上,当应发出(decimal?)Convert.ChangeType(val, typeof(decimal?))
时,它会发出(decimal?)Convert.ChangeType(val, typeof(decimal))
(请注意?
中的所有重要typeof
)
编辑:实际上,我推送到git的修复程序比修复Convert.ChangeType
更复杂一点 - 它现在根据需要解析运算符,因此{{1 }}< ===> decimal
转换使用IL静态调用。
这将在下一个版本中修复。或者您可以在本地构建。现在通过以下内容:
double