protected void LoginCheck()
{
    if (Session["Login_Status"] == null || Session["Login_Status"] == "false")
    {
        MessageBoxShow("Please Login!");
    }
}
protected void Button1_Click(object sender, EventArgs e)
{
    LoginCheck();
    Session.RemoveAll();
    Button1.PostBackUrl = "~/Default.aspx";
    Response.Redirect("~/Default.aspx");
}

如何处理

    Session.RemoveAll();
    Button1.PostBackUrl = "~/Default.aspx";
    Response.Redirect("~/Default.aspx");

登录时为

  

如何编写此程序不使用a   条件if(LoginCheck()){}。我喜欢它的工作方式   PHP:    php退出;功能

有帮助吗?

解决方案

LoginCheck 返回一个布尔值,表示成功或失败,如下所示:

protected Boolean LoginCheck()
{
    if (Session["Login_Status"] == null || Session["Login_Status"] == "false")
    {
        MessageBoxShow("Please Login!");
        return false;
    }
    return true;
}

然后您可以使用该值来确定是否要执行其他任何操作:

protected void Button1_Click(object sender, EventArgs e)
{
    if (LoginCheck()) 
    {
        Session.RemoveAll();
        Button1.PostBackUrl = "~/Default.aspx";
        Response.Redirect("~/Default.aspx");
    }
}

其他提示

我认为这就是你想要的(但这不是一个好主意):

protected void LoginCheck()
{
    if (Session["Login_Status"] == null || Session["Login_Status"] == "false")
    {
        MessageBoxShow("Please Login!");
        Response.End();
    }
}

这是一个坏主意

如果某人正在阅读你的代码,他们会假设在Logincheck()之后会调用Session.RemoveAll()...如果你在LoginCheck中做了一些改变,那么读取Button_Click1(...)

将会非常混乱
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top