我有一个查询,查询条件在哪里,可以检查并查找在特定日期之后添加的地址。日期字段不是必需的,因此我希望仅在条件字段不是1/1/0001的情况下考虑日期字段。dtmDate是要传递的参数
查询
from b in _context.customer
join d in _context.Address on b.id equals d.Id
join e in _context.units on d.Id equals e.Id
where (req.dtmDate.Year != 1 && d.DateAdded >= req.dtmDate)
select new modelAddress
{
address= d.address
}
但是这不起作用。它不返回任何行
如果我对您的理解正确,您有一个名为DateTime
的req.dtmDate
对象,可以将其设置为默认值,并且要返回该项目的DateAdded
字段大于req.dtmDate
的所有项目,除非req.dtmDate
为1/1/0001
,在这种情况下,应返回所有记录。
如果是这种情况,我认为您可以将现有代码修改为:
where (req.dtmDate.Year == 1 || d.DateAdded >= req.dtmDate)