我有两个不同类型的两个列表:加入两个列表具有唯一值
List<LoginTable> loginList = AllLoginTableUser();
List<UserInformation> users = GetAllUserInformation();
其列:
- LoginTable包含登录ID,密码,帐户状态。
- UserInformation包含LoginId,FullName,FatherName,JoinDate,DateofBirth。
我需要一个新的名单,通过加入上述两个名单LoginId
。我不需要重复的值。
我尝试这个代码,但它返回多个值,如果LoginId = 100
那么它显示100两次。
var joined = (from item1 in loginList
join item2 in users on item1.LoginId equals item2.LoginId
orderby item1.LoginId
select new
{
item1.Password,
item2.LoginId,
item2.FullName,
item2.FatherName,
item2.DOB,
item2.JoinDate
}).ToList();
这应该工作正常。每个表只有一次“100”吗?你回来的两条线是什么样的? –
@GrantWinney是的LoginId即100,101等仅在每个表中出现一次。当我尝试加入这两个列表时,它会为每个LoginId填充2-2个值。 –
你的第一个问题是你在其中一个输入列表中有重复。首先解决这个问题,而不是之后修复它。你如何确认输入列表是唯一的?你能否显示[SSCCE](http://sscce.org)? – BartoszKP