直接上代码:
List<Student> sList = new List<Student>(){
new Student(){id=1,Name = "1",VipID = 1} ,new Student(){id=2,Name = "2",VipID = 1} ,
new Student(){id=3,Name = "3",VipID = 0} ,new Student(){id=4,Name = "4",VipID = 2}
}
List<Vip> vList = new List<Vip>(){new Vip(){id = 1,Sid = 1,VipLevle = 1},id = 2,,VipLevle = 3}}
var list = from s in sList
join Vip v in vList on s.VipID = v.id
into svList
from sv in svList .DefaultIfEmpty()
select new {
Name= s.Name,
VipLevel =v.VipLevel
}
生成的SQL为:
select s.name,v.VipLevel from Student s left outer join Vip v on v.id = s.Vid