1、讀取用戶和部門兩個表的左連接:
var sg = db.Users.GroupJoin(db.Departments, u => u.DepartmentId, d => d.DepartmentId, (u,d) => new { u, d }).Select(o=>o).ToList();
注意:上面將返回所用用戶信息和對應的部門信息(即用戶部門ID信息缺少,那么用戶列表也會顯示)
2、讀取指定返回列表字段的左連接信息:
var GJoinList = db.Sys_User.GroupJoin(db.Sys_Department, u => u.DepartmentId, d => d.DepartmentId, (u,d) => new { UserId=u.UserId, Account=u.Account, RealName=u.RealName, EnabledMark=u.EnabledMark, DeleteMark=u.DeleteMark,DepartmentName = d.FirstOrDefault(x=>x.DepartmentId==u.DepartmentId).FullName}).Select(o=>o);
3、讀取連接表:
var sg = db.Users.Join(db.Departments, u => u.DepartmentId, d => d.DepartmentId, (u,d) => new { u, d }).Select(o=>o).ToList();
注意:這里將只顯示用戶里DepartmentId和部門表里DepartmentId相等的信息,如果用戶沒有部門ID則此條用戶信息不會顯示
var data = db.CRM_OrderDetails.Join(db.CRM_Order, d => d.OrderId, o => o.OrderId, (d, o) => new { d, o }).Select(p => new ProductsListModel() { OrderId =p.o.OrderId, OrderCode=p.o.OrderCode, CustomerName=p.o.CustomerName, ProductName=p.d.ProductName, UnitId=p.d.UnitId, Qty=p.d.Qty, Price=p.d.Price, Amount=p.d.Amount, TaxAmount=p.d.TaxAmount, TaxCostAmount=p.d.TaxCostAmount, CreateTime=p.d.CreateTime, EndTime=p.d.EndTime, Description=p.d.Description }).Where(expression).OrderBy(orderbyExpression);