我希望在下面的联接查询中仅从“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);
答案 0 :(得分:29)
我认为你正在寻找像这样的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);