首页 > 代码库 > Linq to Sql 左连接查询

Linq to Sql 左连接查询

技术分享
 1 var query = from t0 in context.ExpressSendMaster
 2 join t1 in context.Supplier on t0.SupplierCode equals t1.SupplierCode
 3 join t2 in context.ExpressSendPackageRule on t0.AreaId equals t2.Id into t0_join
 4 from t0_t2 in t0_join.DefaultIfEmpty()
 5 where t0.Id == MasterId
 6 select new ExpressPackageOffLineModel
 7 {
 8 PackWeight = t0.Weight,
 9 SupplierCode = t1.SupplierCode,
10 SupplierName = t1.Name,
11 SendDate = t0.SendDate,
12 OneselfNumber = t0.OneselfNumber,
13 Memo = t0.Memo,
14 GroupCheck = t0.AreaCode,
15 GroupName = t0_t2.NumberType == null ? "" : t0_t2.NumberType,
16 GroupId = t0_t2.Id == null ? 0 : t0_t2.Id,
17 LimitWeight = t0_t2.LimitWeight == null ? 0 : t0_t2.LimitWeight
18 };
19 
20 
21 if (query.Count() <= 0)
22 {
23 model.HasError = true;
24 model.ErrorMessage = "错误提示";
25 return false;
26 }
27 
28 model.PackWeight = query.First().PackWeight;
29 model.SupplierCode = query.First().SupplierCode;
30 model.SupplierName = query.First().SupplierName;
31 model.SendDate = query.First().SendDate;
32 model.OneselfNumber = query.First().OneselfNumber;
33 model.GroupName = query.First().GroupName;
34 model.Memo = query.First().Memo;
35 model.GroupCheck = query.First().GroupCheck;
36 model.GroupId = query.First().GroupId;
37 model.LimitWeight = query.First().LimitWeight;
View Code

 

 

Linq to Sql 左连接查询