如何使用链接获取不包含重复项的一对一关系?例如:
ID |的状态
1 | CHECKIN
2 | CHECKOUT
2 | CHECKOUT
1 | CHECKIN
3 |结账< -
我应该只检索 ID 3 CHECKOUT ,因为他没有重复。
你能帮我使用linq吗?
答案 0 :(得分:2)
您需要创建一个组并仅要求组项目= 1
Dim nonDuplicates = (From x In query Group By x.Id, x.Status Into grp = Group
Where grp.Count = 1)
答案 1 :(得分:0)
另一个答案仍将检索所有重复的项目,只删除它们的重复项。如果您只想 检索非重复项目,正如您在原始问题中所述,这将对您有用:
Item singles = items.Where(i => !items.Any(j => !i.Equals(j) && i.id == j.id));