我有关于重复记录的问题。我有一个名为tbl_Kisiler的表,如下所示。
ID Adi
--- ----
1 harun
2 ahmet
3 melis
2 ali
我有一个类似于上表的ListBox。我的问题是:我想在C#中移动一个新的ListBox内部重复的ID记录。我该怎么办?
ID, Adi,
---- ----
1 harun
3 melis
2 ali
干杯,
答案 0 :(得分:0)
您可以在将数据绑定到ListBox
之前从DataTable中删除重复的项目请查看以下链接以删除重复的项目
How to imporove the performance of my method created to remove duplicates from a DataView?
答案 1 :(得分:0)
您的意思是要创建一个包含重复ID的记录的新列表框,即
ID Adi
--- ----
2 harun
2 ali
如果您想要这样做,可以使用linq选择重复项
var duplicateIDs = from r in records
group r by r.id into g
where g.Count() > 1
select g.Key;
var duplicateRecords = from r in records
where duplicateIDs.Contains(r.id)
select r;
var nonDuplicateRecords = from r in records
where !duplicateIDs.Contains(r.id)
select r;
listBox2.DataSource = duplicateRecords.ToList();
listBox1.DataSource = nonDuplicateRecords.ToList();
如果我误解了你的问题,请道歉。我很确定linq查询可以改进,希望有人可以建议更流畅的方式。