各位帮个忙看一下

骑着蜗牛上高速102567 2015-03-24 05:41:36
[code=csharp]
if (IsSucceedList.Count > 0)
{
//遍历集合,如果为true继续遍历,如果为false将数据更新为初始状态并停止遍历。
foreach (bool success in IsSucceedList)
{
if (success)
{
IsSucced = true;
}
else
{
IsSucced = false;
if (UpdateQntyDt != null && UpdateQntyDt.Rows.Count > 0)
{
for (int i = 0; i < UpdateQntyDt.Rows.Count; i++)
{
。。。。。。
}
}
此处想跳出整个循环用break可行吗?
}
}
}
}
我想在else内执行更新操作并且跳出整个循环用break可行吗?如果别的方式如何修改代码
...全文
104 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 2 楼 u014008675 的回复:
我不是想跳出foreach而是想跳出if (IsSucceedList.Count > 0)这个判断条件不再执行这段代码
在外部设置个标志位
if (IsSucceedList.Count > 0)
            {bool needBroken=false;
                //遍历集合,如果为true继续遍历,如果为false将数据更新为初始状态并停止遍历。
                foreach (bool success in IsSucceedList)
                {
                    if (success)
                    {
                        IsSucced = true;
                    }
                    else
                    {
                        IsSucced = false;
                        if (UpdateQntyDt != null && UpdateQntyDt.Rows.Count > 0)
                        {
                            for (int i = 0; i < UpdateQntyDt.Rows.Count; i++)
                            {
                                    。。。。。。
                            }
                        }
                        //此处想跳出整个循环用break可行吗?
                        needBroken=true;break;
                    }
                }
               if(!needBroken)
                {
                      //执行不需要结束的代码
                }
            }
            }
goto虽然我上面也写了,但慎用
江南小鱼 2015-03-24
  • 打赏
  • 举报
回复
引用 2 楼 u014008675 的回复:
我不是想跳出foreach而是想跳出if (IsSucceedList.Count > 0)这个判断条件不再执行这段代码
如果你不想执行if代码段,而又不想把IsSucceedList清空,可以设置一个bool类型的变量 比如 if(isSuccess && IsSucceedList.Count > 0){} 这样的话,你把isSuccess赋值false,if代码段就不执行了
江南小鱼 2015-03-24
  • 打赏
  • 举报
回复
引用 2 楼 u014008675 的回复:
我不是想跳出foreach而是想跳出if (IsSucceedList.Count > 0)这个判断条件不再执行这段代码
使用goto 用法参考msdnhttps://msdn.microsoft.com/zh-cn/library/13940fs2(VS.80).aspx
  • 打赏
  • 举报
回复
我不是想跳出foreach而是想跳出if (IsSucceedList.Count > 0)这个判断条件不再执行这段代码
  • 打赏
  • 举报
回复
就是break啊,你这个不就一层循环吗?你又不是多层循环 如果多层要跳出,可以通过标志位,然后一层层跳出,也可以直接通过goto跳出

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧