欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

LINQ 语句中格式化日期

程序员文章站 2024-02-22 23:05:47
...

原文地址: https://www.jeremyjone.com/656/,转载请注明。


LINQ中经常需要进行数据判断进行筛选,如果遇到需要对日期进行格式化,需要注意不能在实体Entity中直接格式化日期,这样会报错,而是需要先将实体转换,再筛选。

例如:

var day = "2020-04-20";
var r = _db.PlanDay.FirstOrDefault(x=>x.Validity && string.Equals(x.CreateTime.ToString("yyyy-MM-dd"), day));

上面这样写,直接崩掉,因为直接对CreateTime实体字段使用ToString()方法。

应该修改为如下,即可解决问题:

var day = "2020-04-20";
var r = _db.PlanDay.ToList().FirstOrDefault(x=>x.Validity && string.Equals(x.CreateTime.ToString("yyyy-MM-dd"), day));

先将数据库所有数据转为List,再查找,就可以简单有效的解决问题。