求助c# return 之后还会往下执行

在try里用return 截断执行,但是还是继续执行了,这时怎么回事呢,我用的是一个方法里进行了判断,然后用了return
,可是执行到这里后接下来的其他下面的方法还是被执行了,怎么回事

把代码贴上来看一下!

public void Pay()
{
try
{
B_borrowInfo boBll = new B_borrowInfo();
B_payInfo payBll = new B_payInfo();
M_payInfo payModel = payBll.GetModel(PayId);
if (payModel.mortBalan == 0)
{
Box.ShowMessage("***********", "/Admins/repaymentingList.aspx");
return;
}
else
{
DateTime withTime = (DateTime)payModel.withTime;
TimeSpan timespan = withTime.Subtract(PayTime);
if (timespan.Days >= 7)
{
Box.ShowMessage("*************************", "lendList.aspx");
return;
}
else
{

第二个return后还是执行

能调试吗?个人感觉,要么是没有执行到if里面去。
一般,不建议else里面套if,这样逻辑容易乱。拆成多个单独的if,只要if不满足,就返回。

return 没有走到。

只有一种情况会执行return后面的代码,就是把return写在try/catch中,finally还是会执行

今天再测试下,谢谢大家

已经解决了,问题是return只能终止当前的viod,并列的其下的方法还是会继续执行的,我之前做的方式是
A();//这里return了
B();