【发布时间】:2012-10-22 11:48:38
【问题描述】:
您好,我有一个网格,其中填充了用户参与的教育课程的结果。对于每个用户,他们都有自己的网格,显示他们完成的每门课程以及每次尝试的状态课程。例如:
课程名称 |状态
Excel,不完整
肢体语言,完整
肢体语言,被遗弃
肢体语言,不完整
肢体语言,已完成
肢体语言,完成
删除重复项后,表格应如下所示:
课程名称 |状态
Excel,不完整
肢体语言,完整
肢体语言,被遗弃
肢体语言,不完整
我试图这样做:
public static DataTable RemoveDuplicateRows(DataTable dTable, string colName, string colTitle) { 哈希表 hTable = new Hashtable(); ArrayList duplicateList = new ArrayList();
foreach (DataRow drow in dTable.Rows)
{
if (hTable.Contains(drow[colName]) && hTable.Contains(drow[colTitle]))
{
duplicateList.Add(drow);
}
else
hTable.Add(drow[colName], drow[colTitle]);
}
foreach (DataRow dRow in duplicateList)
dTable.Rows.Remove(dRow);
return dTable;
}
但是这种方式给了我一个错误: 项目已添加。在字典中键入:'不完整'c#
我现在知道在键值对中不能有重复的键。有谁知道解决这个问题的方法或我可以用来解决这个问题的不同方法。抱歉忘了补充,这需要添加到数据表中。
干杯,詹姆斯
【问题讨论】:
标签: c# datatable key duplicates hashtable