【发布时间】:2013-08-14 10:20:05
【问题描述】:
使用 Nhibernate、Visual Studio 2010、C#。
我在转换小数时遇到问题?类型。代码给出了一个
Specified Cast is not valid error
并在 .UniqueResult 行上失败。
以下是我的代码。
private decimal? GetCostValueFromQuery(string query, ItemPriceContext item)
{
var session = ActiveRecordMediator.GetSessionFactoryHolder()
.CreateSession(typeof(object));
return session.CreateSQLQuery(string.Format(query, item.ItemCode))
.UniqueResult<decimal?>();
}
我的SQL查询结果是62.3891005516052
我怀疑结果有很多小数位,因此失败了。
有什么建议我可以对结果进行舍入或减少结果以使其受支持?
【问题讨论】:
-
如果你只使用
<decimal>会发生什么你查询返回 NULL 结果,如果是,那么可能你需要在你的 sql 中使用它IsNull(<exp>,0)
标签: c# nhibernate type-conversion decimal