使用LINQ C#根据一周中选定的几天筛选数据

dly7yett  于 2022-12-06  发布在  C#
关注(0)|答案(1)|浏览(181)

我需要编写一个查询,以便根据所选日期范围与天数筛选数据

查询:-

Expression<Func<Task, bool>> filterPredicate =
                s => s.Active && !s.Deleted && s.StartDateTime != null && s.EndDateTime != null &&
                s.StartDateTime >= startDate && s.StartDateTime <= endDate;

选定的日期范围筛选器工作正常,但如果用户选择了星期几(例如星期一、星期二)沿着日期范围,我需要帮助来筛选数据

7vux5j2d

7vux5j2d1#

它是这样的...你应该知道这个成瘾条件是和/或,并且知道startDate和endDate是否有相同的值。假设StartDateTime是一个DateTime类型。

Expression<Func<Task, bool>> filterPredicate =
            s => s.Active && !s.Deleted && s.StartDateTime != null && s.EndDateTime != null &&
            s.StartDateTime >= startDate && s.StartDateTime <= endDate || s.StartDateTime.DayOfWeek == selectedDayOfWeek  && s.StartDateTime.DayOfWeek == selectedDayOfWeek;

相关问题