在运行程序时遇到这样一段异常,仔细检查后发现是使用Foreach...In语法体内运用了对Collection的Remove或Add导致的,只需要将foreach方法改为for方法即可。
出问题的原代码如下:
1 foreach (DataRow dr in dt.Rows)
2 {
3 if (dr[1].ToString().Equals("3"))
4 {
5 dt.Rows.Remove(dr);
6 }
7 }
2 {
3 if (dr[1].ToString().Equals("3"))
4 {
5 dt.Rows.Remove(dr);
6 }
7 }
改成这样就ok了:
for(int i=dt.Rows.Count-1;i>=0;i--)
{
DataRow dr = dt.Rows[i];
if(dr[1].ToString("3").Equals())
{
dt.Rows.Remove(dr);
}
}
{
DataRow dr = dt.Rows[i];
if(dr[1].ToString("3").Equals())
{
dt.Rows.Remove(dr);
}
}
我抬头仰望,星星给予仰望者光芒……
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步