我有下一个IQueryable过滤Double值:
var pQuery =
(from c in db.TABLE
select new
{
cDate = c.DATE,
dMid = (double)c.MID,
})
.Where("dMid > 13.5");
当我看到IntelliTrace时,Linq会生成下一个查询:
select DATE, MID
from TABLE
where MID > cast(135 as float(53))
我不是为什么Linq删除小数分隔符并将过滤器表达式从13.5转换为135。
有人可以帮助我???
感谢!!!!
答案 0 :(得分:0)
最后它比我想象的要容易。用户lc。给我使用“f”字符的解决方案
var pQuery =
(from c in db.TABLE
select new
{
cDate = c.DATE,
dMid = (double)c.MID,
})
.Where("dMid > 13.5f");
..这被翻译为:
select DATE, MID
from TABLE
where MID > cast(13.5 as float(53))