gpt4 book ai didi

C# DateTime 从 linq 到分钟

转载 作者:太空狗 更新时间:2023-10-29 18:19:54 62 4
gpt4 key购买 nike

我正在尝试比较 DateTime.Now 和 SQL 条目中的两个 DateTimes。我看到的问题是,由于从数据库返回的种类,滴答声略有偏离。但是我想不出解决方法。

这是我要获取的DateTime

DateTime toGrab = DateTime.Now.AddMinutes(10)
.AddSeconds(-DateTime.Now.Second)
.AddMilliseconds(-DateTime.Now.Millisecond);

还有我的 linq 表达式。

cc.DBAppointments.Where(c => c.StartDate == toGrab && c.Approved == 1).ToList();

有什么建议吗?

最佳答案

我假设您正在为此使用 Entity Framework。如果您只需要比较直到几分钟的日期时间,您可以使用 System.Data.Entity.DbFunctions 访问 linq-to-entities 中的规范函数。例如,您可以使用它:

cc.DBAppointments
.Where(c => DbFunctions.DiffMinutes(c.StartDate,DateTime.Now) == 0 && c.Approved == 1)
.ToList();

通过这种方式,您可以访问高级 sql 日期时间比较,而不必使用技巧将秒/毫秒添加到您的 DateTime.Now。此函数将忽略小于分钟的所有内容

关于C# DateTime 从 linq 到分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35026284/

62 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com