C# join, 连表查询

var result = dogs.Where(d => d.Id > 1).Join(masters, d => d.MasterId, m => m.Id,

(d, m) => new { DogName = d.Name, MasterName = m.Name });

在dog的集合中查询dog.Id大于1的数据。被连接的表masters(集合), d => d.MasterId指左表的字段(狗的MasterId属性) m => m.Id指右表的字段(主人的Id)。

(d, m) => new { DogName = d.Name, MasterName = m.Name } 指查询的结果。

指创建新的匿名对象的集合,匿名对象有DogName 和 MasterName 属性。