【发布时间】:2019-01-14 22:19:41
【问题描述】:
如果我在其中一个 foreach 中遇到中断,如何退出 Try 块并返回。我能够让中断正常工作,但它随后进入下一个 foreach :D 哈哈 :) 很有趣 :p 我应该尝试在 try 块内返回吗?请帮助更正我的代码。
public void function()
{
Response() response= new Response();
try
{
1st Foreach ( if condition met, break; )
2nd Foreach ( if condition met, break; )
3rd Foreach ( if condition met, break; )
}
catch( Exception e)
{
}
return response;
}
【问题讨论】:
-
如果我正确理解您的问题,也许可以使用
return而不是break? -
@HamletHakobyan:我觉得很好,让我试着告诉你进展如何。
-
1st Foreach ( if condition met, return response; )然后对其他块也这样做。 -
这可能是
goto正常的罕见情况之一。 -
Re: Q: 我应该尝试在 try 块内返回吗? A: 是。如果您从
try内部返回,一切都会按您的预期继续工作。catch无关紧要,如果你的return执行,则没有发生异常。您的finally代码将在带有return的语句执行之后,但在函数实际返回给调用者之前运行。
标签: c# .net c#-4.0 foreach try-catch