linq in写法:
两个表之间通过关联的字段进行查询
a表:blist。
b表:goodslist
代码如下
var blist = con.shop_booth.Where(p => p.group_id == group_id|| group_id==0).Select(p => p.id);
var list = from p in goodslist
where blist.Contains(p.booth_id)
select new
{
p.id
};
linq jion写法
var CList = con.Estate_Customer_Project.Where(p => p.ServiceUid == ServiceUid).Select(p => new { p.ProjectID, p.CustomerID, p.AgencyUid });
var list = from p in con.Estate_VisitRecord join q in CList on new {CustomerID= p.CustomerId, ProjectID=p.ProjectId, MembersID=p.OperateUID } equals new { CustomerID= q.CustomerID, ProjectID=q.ProjectID, MembersID=q.AgencyUid } select new {p.id ,p.OperateUID, p.ProjectId, p.VisitTime, p.CustomerId, p.CreateTime };
var MyList = new List<Estate_VisitRecord>();
foreach (var item in list)
{
MyList.Add(new Estate_VisitRecord { id = item.id, OperateUID = item.OperateUID, CustomerId=item.CustomerId, ProjectId=item.ProjectId, VisitTime=item.VisitTime, CreateTime=item.CreateTime });
}
return MyList;
}
主意 做为条件查询的字段类型必须要相同,否则会出错。