我的链接查询
var q = from l in db.Locations
select new LocationWrap {
Location = l
每个位置返回一行
直到我添加:
var q = from l in db.Locations
join lcl in db.Location_Catering_Links on l.ID equals lcl.LID into catering from lcl in catering.DefaultIfEmpty()
select new LocationWrap {
Location = l,
hasCatering = (lcl != null)
然后返回许多位置记录(尽可能多)。我相信它可能正在做一个左外连接,当我需要的是一个是否有任何餐饮记录的布尔值。
我该怎么做?
答案 0 :(得分:0)
您可以尝试这样的事情:
var q = from l in db.Locations
select new LocationWrap
{
Location = l,
hasCatering = db.Location_Catering_Links.Any(x => x.ID==l.ID)
};
所以不需要加入。
答案 1 :(得分:0)
假设您的位置实体中有Location_Catering_Links
导航属性,则可以执行以下操作:
var q = from l in db.Locations
select new LocationWrap
{
Location = l,
hasCatering = l.Location_Catering_Links.Any()
};