可选Linq-to-SQL查询中的位置

时间:2015-03-19 21:10:38

标签: if-statement linq-to-sql where

我只是在DateTime? start不为空时尝试过滤表,但我得到了触及空对象.Value的异常。实现这一目标的正确方法是什么?

.Where(e => start.HasValue ? e.Timestamp >= start.Value : true)

1 个答案:

答案 0 :(得分:0)

对不起,伙计们,我找到了答案。这个没问题:

.Where(e => !start.HasValue || e.Timestamp >= start)

我查看了SQL Profiler - 当Where为空时,Linq-to-SQL会完全删除start