LINQ To SQL 处理 DateTime?

LINQ To SQL 处理 DateTime? 类型

 

例子: 搜索栏含有最后扫描时间的日期(DateTime?)与多个其他条件(String)

现在需要写一个查询 : 查询符合最后扫描的日期的查询

 

搜索结果

 

 以上是使用LINQ To Object 编写搜索的结果;以下试试使用 LINQ To SQL

 

当搜索条件中最后扫描时间有值时,运行正常,查询到一条结果。

但当搜索条件中不填写最后扫描时间时,运行则报错了。

 

照理如果没有填写时间条件的话 则满足了 || 前的条件 就不会走或后面的逻辑。

 最终我们怀疑是 Linq To Object 中对 ||  的正式运行时无论怎样都会运行 || 前后的条件, 导致找到了后面空值的.Date发生了错误。

 

 

对于搜索可空条件 我们会做一个转换, 转成不可空的 SqlDateTime 的最小值或最大值

 

 

转载于:https://www.cnblogs.com/howesdomo/p/6268439.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值