朋友们我们正在将sql查询转换为linq查询,这种转换涉及两个表如下
select * from Tbl_Vulpith_Registration where Profile_Pic is not null and MemId IN(select MemId from Tbl_List_Services)
这里Tbl_Vulpith_Registration和Tbl_List_Services都是表格
memId是两个表中的公共列。
按照我们尝试将上述sql查询转换为linq
的内容var reglist= objentity.Tbl_Vulpith_Registration.Select(a => a).Where(a => a.Profile_Pic != null);
// var res= reglist.Where(a=>a.Tbl_List_Services)
var listmemsmemIds = objentity.Tbl_List_Services.Select(b => b.MemId).ToList();
var finalist = reglist.Select(b => b).Where(c => c.MemId.Contains(listmemsmemIds));
我们尝试了多种转换方式,但没有运气。
答案 0 :(得分:1)
你需要做的恰恰相反:
.Where(c => listmemsmemIds.Contains(c.MemId))
答案 1 :(得分:0)
使用以下代码连接两个表并获取输出(在内部,它只会创建一个查询)
var reglist = objentity.Tbl_Vulpith_Registration.Join(objentity.Tbl_List_Services,
o => o.MemId, i => i.MemId, (o, i) => o).Where(o => o.Profile_Pic != null).ToList()
上述代码根据匹配MemId
关联表格,并返回实体类型Tbl_Vulpith_Registration
的对象。
如果您想了解加入方法,请查看this链接。