EFCore使用lambda进行多表连接(join)并匹配多个条件


var res = DbSet<A>().join(DbSet<B>(),A=>new {A.Id,A.Name},B=>new {B.Id,B.Name},(A,B)=>new {A,B};
//或者
var res = DbSet<A>().join(DbSet<B>(),A=>new { Id = A.Id, Name = A.Name},B=>new {Id =  B.UserId, Name = B.UserName},(A,B)=>new {A,B};

注意:1、匿名类(连接条件)中的参数顺序必须一致,即 A.Id,A.Name 和 B.Id,B.Name

var res = DbSet<A>().join(DbSet<B>(),A=>new {A.Name,A.Id},B=>new {B.Id,B.Name},(A,B)=>new {A,B};

这样是不行的。A.Name,A.Id 和 B.Id,B.Name


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM