首页 新闻 会员 周边

lambda表达式关于where,join的一些疑问,请指教

0
[待解决问题]

有如下代码,请大家帮我分析下,到底哪个的性能好一点

方案1:

IQueryable<Biz_TableA> tableAQueryable = uow.Biz_TableA.GetAll().where(o=>o.status==false);
IQueryable<Biz_TableB> tableBQueryable = uow.Biz_TableB.GetAll();

tableBQueryable = tableBQueryable.where(o=>tableAQueryable.select(p=>p.Id).Contains(o.Id))

方案2:

IQueryable<Biz_TableA> tableAQueryable = uow.Biz_TableA.GetAll();
IQueryable<Biz_TableB> tableBQueryable =uow.Biz_TableB.GetAll().join(
tableAQueryable,a=>a.Id,b=>b.Id,(a,b)=>new {a,b}).where(o=>o.a.status==false).select(o=>o.b)
)

另外,还有什么更好的写法么,请指教,谢谢。

好记性不如烂笔头啊的主页 好记性不如烂笔头啊 | 初学一级 | 园豆:184
提问于:2019-06-19 16:38
< >
分享
所有回答(1)
0

看上去都很差

Eric.luo | 园豆:853 (小虾三级) | 2019-07-30 15:36

uow.Biz_TableA.join(uow.Biz_TableB,a=>a.Id,b=>b.Id,(a,b)=>new {a,b}).where(o=> !o.a.status).select(o=>o.b)

支持(0) 反对(0) Eric.luo | 园豆:853 (小虾三级) | 2019-07-30 15:41
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册