为了账号安全,请及时绑定邮箱和手机立即绑定

将 sql 查询转换为 linq 时,显示 long 的 linq 查询不包含包含的定义

将 sql 查询转换为 linq 时,显示 long 的 linq 查询不包含包含的定义

C#
眼眸繁星 2021-06-29 13:00:35
朋友们我们正在将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 查询转换为 linqvar 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));我们尝试了多种转换方式,但都没有成功。
查看完整描述

2 回答

?
烙印99

TA贡献1829条经验 获得超13个赞

你需要做完全相反的事情:

.Where(c => listmemsmemIds.Contains(c.MemId))


查看完整回答
反对 回复 2021-07-10
?
繁花不似锦

TA贡献1851条经验 获得超4个赞

使用下面的代码连接两个表并获取输出(在内部,它只会创建一个查询)

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

如果您想了解 Join 方法,请查看链接。


查看完整回答
反对 回复 2021-07-10
  • 2 回答
  • 0 关注
  • 218 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信