0
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");

ログインがfalseの場合

if(LoginCheck()){}の条件を使用しないようにこのプログラムをコーディングするにはどうすればよいですか。phpのように動作させたい: php exit; 機能

4

3 に答える 3

3

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");
    }
}
于 2009-09-11T04:00:04.897 に答える
1

私はこれがあなたが望むものだと思います(しかしそれはそれほど良い考えではありません):

protected void LoginCheck()
{
    if (Session["Login_Status"] == null || Session["Login_Status"] == "false")
    {
        MessageBoxShow("Please Login!");
        Response.End();
    }
}
于 2009-09-11T04:22:59.180 に答える
0

これは悪い考えです

誰かがあなたのコードを読んでいる場合、彼らは Logincheck() の後に Session.RemoveAll() ... が呼び出されると想定します。LoginCheck で何らかのトリックを行うと、Button_Click1(...) の読み取りが非常に混乱するようになります。

于 2009-09-11T18:34:00.593 に答える