【问题标题】:LINQ compare 2 tables, only return previous item, not allLINQ比较2个表,只返回前一项,而不是全部
【发布时间】:2013-01-24 12:44:11
【问题描述】:

所以...每个工作站都有许多发票,My Linq 语句将工作站连接到发票并比较它们。 我只希望我的 LINQ 选择最近的发票(为该工作站生成的上一张发票)。

比较 ATM 的所有发票,并且将返回

在前一个 Q 的帮助下,这就是我的 atm...

   DateTime OneYearAgo = DateTime.Now.AddYears(-1);

        var SelectedObject =
            (from workstation in db.Work_Sites
             join invoice in db.Invoices on workstation.id equals invoice.Site_Id
              where invoice.Invoice_Date <= OneYearAgo
             select workstation).Distinct().ToList();

【问题讨论】:

    标签: c# linq


    【解决方案1】:
      DateTime OneYearAgo = DateTime.Now.AddYears(-1);
    
      var SelectedObject =
                (from workstation in db.Work_Sites
                 join invoice in db.Invoices.Where(i => i.Invoice_Date <= OneYearAgo)
                       on workstation.id equals invoice.Site_Id into g
                 where g.Any()
                 select workstation).ToList();
    

    这将返回至少有一张发票一年前的工作站。

    【讨论】:

      猜你喜欢
      • 2018-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多