c# - Linq查询以获取两个日期之间的所有值

标签 c# asp.net-mvc linq

是否可以使用 linq 创建查询以获取用作分隔符的两个日期之间的值范围?

例如

获取 Date 列的值介于 12/12/12 和 12/12/13 之间的所有实体。

我只是在寻找提示或方法。

最佳答案

当然可以,如果这就是您想要的,则没有“介于”语法,但这样做相对简单,例如

list.Where(x => x.Date >= StartDate && x.Date <= EndDate);

如果你想要更好的可读性,你甚至可以为 DateTime 写一个扩展方法,即

public static class DateTimeHelpers
{
    public static bool Between(this DateTime dateTime, DateTime startDate, DateTime endDate)
    {
        return dateTime >= startDate && dateTime <= endDate;
    }
}
...
list.Where(x => x.Date.Between(StartDate, EndDate));

关于c# - Linq查询以获取两个日期之间的所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19952558/

相关文章:

c# - Azure 上的 Asp.net MVC 5.2.2

c# - Windows 上的 DNS 自定义开发?

c# - 如何查看父 View 模型 MVC3 C#?

c# - protobuf-csharp-端口

c# - 瑞典 SSN 正则表达式拒绝特定年龄以下的用户

c# - 如何通过该嵌套列表对具有 List<string> 属性的 List<T> 进行分组?

c# - LINQ 查询以从分组中查找最小值 - 无法创建类型为 'X' 的常量

c# - 如何将查找作为 2 个旧查找的联合?

c# - 使用对象的接口(interface)将对象列表转换为 IList

c# - 创建一个普通数组,其中一个位置可以保存多个值