日期:2014-05-19  浏览次数:20442 次

|M| 如何在过程中中断父过程
比如
void   load()
{
        ...
        BindList();
        ...
}
void   BindList()
{
    ...
    ??   在这里中断的所以父级的代码     因为在这里我判断有没有权限,因果没有的话程序就不用再向下执行了,但这里用return   的话只回这一层
    ...
}
也相当于
protected   void   Page_Load(object   sender,   EventArgs   e)
{
        BindList();
        Response.Write( "OK ");
}
void   BindList()
{
        return;
}
在这里BindList要怎么写才不会执行Response.Write( "OK ");

------解决方案--------------------
bool BindList()
{
bool isWhat;
return;
}
------解决方案--------------------
protected void Page_Load(object sender, EventArgs e)
{
if(BindList() == false)
{
returnl
}
Response.Write( "OK ");
}
------解决方案--------------------
不改能过吗?
------解决方案--------------------
呵呵...
protected void Page_Load(object sender, EventArgs e)
{
if(BindList())
Response.Write( "OK ");
}
bool BindList()
{
return false;
}

------解决方案--------------------
protected void Page_Load(object sender, EventArgs e)
{
if(BindList())
Response.Write( "OK ");
}
bool BindList()
{
return false;
}
----
差不多就这个了
把函数返回作为条件判断就ok

------解决方案--------------------
一般来说你可以用异常来操作,

比如在这权限不通过的时候用:
throw new Exception( "没有足够的权限 ");


在父过程中用try{}catch{}来操作就是了.
------解决方案--------------------
因为一个异常是向上抛出的,如果上一层没有对此异常处理则继续向上一层传递,只到有一层处理了为止.
------解决方案--------------------
比如我们现在做连接数据库的话,就用try{自定义连接函数}catch{提示;return;}

父进程catch后边的代码就不执行了

------解决方案--------------------
up