在response.redirect之后停止页面生命周期执行

时间:2011-02-24 17:11:47

标签: asp.net page-lifecycle

我有一个基类,它为应用程序中的所有页面实现了一些基本身份验证。

public class BasePage : Page
{

    public void Page_PreLoad(object sender, EventArgs e)
    {
        if (!IsUserValid())
        {
            Response.Redirect("default.aspx");
        }
    }


}

public class AuthenticatedUser : BasePage
{
    public void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            Databind();
        }
    }
}

如果用户无效,如何停止AuthenticatedUser的页面生命周期?

谢谢, Ashwani

2 个答案:

答案 0 :(得分:5)

Response.Redirect将绝对停止页面生命周期执行。如果您不希望它停止,您可以在重定向目标之后添加false的参数值。

也许我不清楚你在问什么,如果你想在没有重定向的情况下停下来然后使用Response.End()

答案 1 :(得分:-1)

在Response.Redirect中

你可以设置一个布尔值:

Response.Redirect("Default.aspx", false);

在此模式下使用方法,在调用方法时停止页面生命周期。(false是endResponse boolean)