Как выйти из метода, если не для использования этого метода в методе

StackOverflow https://stackoverflow.com/questions/1408899

  •  05-07-2019
  •  | 
  •  

Вопрос

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

когда логин ложный

  

как мне написать эту программу, чтобы не использовать   условие 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