18

我希望在下面的连接查询中只从“ ”表中选择第一条记录CustomerSubOwners,并想知道在 LINQ 中实现这一目标的最佳方法是什么。

var result= (from t1 in db.Cases
             from t2 in db.CustomerSubOwners
                          .Where(o => t1.CustomerId == o.CustomerId && o.Expiry >= DateTime.Now)
                          .DefaultIfEmpty()
             select t1);
4

1 回答 1

44

我认为您正在寻找Take方法,如下所示:

var result= (from t1 in db.Cases
             from t2 in db.CustomerSubOwners.Where(o => t1.CustomerId == o.CustomerId && o.Expiry >= DateTime.Now)
                                            .Take(1)
                                            .DefaultIfEmpty()
             select t1); 
于 2012-10-15T16:54:36.327 回答