问题:
需要对DataGridViewRow的下拉框列Item2所选内容进行判别,看是否跟数据库里边某个装备表的数据列Item1匹配。
如果用两个foreach循环进行匹配,会导致逻辑杂乱而且简单只break里边那层循环而疏忽break外层循环而造成bug.
解决方案:
奇妙运用List,把装备表满意条件的Item1统计装到List,再运用List的Contains方法来判别DataGridViewRow是否有行的Item2列是等于Item1相关项。
代码:
List<string>list=newList<string>();
DataTabledt=xxxx;foreach(DataRowdrindt.Rows)
{
list.Add(dr[“Item1”].ToString());
}foreach(DataGridViewRowrowindgv.Rows)
{if(list.Contains(row.Cells[“Item2”].EditedFormattedValue.ToString()))
{
strXX=row.Cells[“XXXX”].EditedFormattedValue.ToString();break;
}
}
C#中巧用妙法避免嵌套方式使用两个foreach循环
未经允许不得转载:IT技术网站 » C#中巧用妙法避免嵌套方式使用两个foreach循环