LINQ 左连接查询时如何去除重复项

荷塘散人 2017-05-03 05:08:19
有两张表,表A存储人员信息;表B存储人脸注册信息;
A中的人员信息唯一,但B表中可能存在多条人脸注册信息;B表和A表通过code对应;
那么在左连接查询的时候,会产生多条数据,我现在想A和B 左连接查询是否有注册过,所以不想产生多条重复数据;
from user in db.User
join face in db.Userfaces
on user.IDCard equals iris.IDCard into dc
from dci in dc.DefaultIfEmpty()
where user.UserName.ToLower().Contains(searchkey.ToLower())
select new UserEx
{
Id = user.Id,
CompanyCode = user.CompanyCode,
CompanyName = user.CompanyName,
UserCard = user.UserCard,
UserName = user.UserName,
Department1 = user.Department1,
IDCard = user.IDCard,
CreateDate = user.CreateDate,
Enrolled = dci.Template == null ? false : true
}).OrderByDescending(m => m.Id).ToList();
...全文
484 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
荷塘散人 2017-05-03
  • 打赏
  • 举报
回复
引用 1 楼 hanjun0612 的回复:
如果你只是想查询用户是否 注册过人脸信息。 那么下面这样就可以了
var q = (from a in list.Where(x => x.name == "account")
                     join b in list1 on a.id equals b.id
                     select b).Any();
但我要把A中的数据都选出来
正怒月神 2017-05-03
  • 打赏
  • 举报
回复
如果你只是想查询用户是否 注册过人脸信息。 那么下面这样就可以了
var q = (from a in list.Where(x => x.name == "account")
                     join b in list1 on a.id equals b.id
                     select b).Any();

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧