仅在日期不低的日期(01/01/0001)中包括在条件中

问题描述 投票:0回答:1

我有一个查询,查询条件在哪里,可以检查并查找在特定日期之后添加的地址。日期字段不是必需的,因此我希望仅在条件字段不是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
              }

但是这不起作用。它不返回任何行

c# sql .net sql-server linq
1个回答
1
投票

如果我对您的理解正确,您有一个名为DateTimereq.dtmDate对象,可以将其设置为默认值,并且要返回该项目的DateAdded字段大于req.dtmDate的所有项目,除非req.dtmDate1/1/0001,在这种情况下,应返回所有记录。

如果是这种情况,我认为您可以将现有代码修改为:

where (req.dtmDate.Year == 1 || d.DateAdded >= req.dtmDate)
© www.soinside.com 2019 - 2024. All rights reserved.