当前位置: 移动技术网 > IT编程>开发语言>c# > C#中巧用妙法避免嵌套方式使用两个foreach循环

C#中巧用妙法避免嵌套方式使用两个foreach循环

2019年10月31日  | 移动技术网IT编程  | 我要评论

问题:
需要对datagridviewrow的下拉框列item2所选内容进行判断,看是否跟数据库里面某个配置表的数据列item1匹配。
如果用两个foreach循环进行匹配,会导致逻辑复杂而且容易只break里面那层循环而忽略break外层循环而造成bug.

解决方案:
巧妙使用list,把配置表满足条件的item1统计装到list,再使用list的contains方法来判断datagridviewrow是否有行的item2列是等于item1相关项。

代码:

list<string> list = new list<string>();

datatable dt = xxxx;
foreach (datarow dr in dt.rows)
{
    list.add(dr["item1"].tostring());
}

foreach (datagridviewrow row in dgv.rows)
{
    if (list.contains(row.cells["item2"].editedformattedvalue.tostring()))
    {
        strxx = row.cells["xxxx"].editedformattedvalue.tostring();
        break;
    }
}

 

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网