将列表中的项目与数据表中的项目进行比较
本文关键字:项目 比较 数据表 列表 | 更新日期: 2023-09-27 18:34:51
这是我的列表:
List<String> myItems = new List<String>();
这就是我与数据表中的项目进行比较的方式:
for (int i = 0; i < dt.Rows.Count; i++)
{
if (myItems[i].ToString().Trim().Equals(dt.Rows[i][1].ToString().Trim()))
}
但是,如果项目数不匹配,应用程序将中断。例如,在mylist中有30个项目,但在dt中有35个项目。
查找列表中不存在的数据表中
的项目Items.Except(datatable.AsEnumerable().Select(r => r.Field<string>(columnIndex)));
对于 datable 中不在列表中的项目,反转上述语句
您可以在列表和 dt 之间使用最低计数进行倾斜。所以你不会陷入循环。
List<String> myItems = new List<String>();
int count = myItems.Count>dt.Rows.Count?dt.Rows.Count:myItems.Count; // it will give lowest count between them
现在循环使用此计数
for (int i = 0; i < count; i++)
{
if (myItems[i].ToString().Trim().Equals(dt.Rows[i][1].ToString().Trim()))
}