首页 > 解决方案 > 如果选择的项目值 == 某些东西,Linq 选择在哪里

问题描述

我有一个项目存储库,其中可能包含也可能不包含DateTime字段ValidFromValidTo. 我需要选择今天日期介于ValidFromValidTo日期之间的所有项目以及所有没有ValidFrom和/或ValidTo日期的项目。

我试过了

.WhereIf(f.ValidFrom.HasValue, f.ValidFrom.Value.Ticks < DateTime.Now.Ticks)
.WhereIf(f.ValidTo.HasValue, f.ValidTo.Value.Ticks > DateTime.Now.Ticks)
.ToList

但是第一个“f”在当前上下文中不存在。

我也试过

.WhereIf(f => f.ValidFrom.HasValue, f.ValidFrom.Value.Ticks < DateTime.Now.Ticks)
.WhereIf(f => f.ValidTo.HasValue, f.ValidTo.Value.Ticks > DateTime.Now.Ticks)
.ToList

这样第三个“f”在当前上下文中不存在。

标签: c#linqrepository

解决方案


推荐阅读