Como sair Método Quando Não para utilizar este método no Método
-
05-07-2019 - |
Pergunta
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");
}
Como não processar
Session.RemoveAll();
Button1.PostBackUrl = "~/Default.aspx";
Response.Redirect("~/Default.aspx");
Quando o Login false
Como faço para codificar o programa não usar um condição if (LoginCheck ()) {}. Eu gostaria que ele funcione como php: php saída; função ?
Solução
Tem LoginCheck
retornar um valor booleano que indica sucesso ou fracasso como este:
protected Boolean LoginCheck()
{
if (Session["Login_Status"] == null || Session["Login_Status"] == "false")
{
MessageBoxShow("Please Login!");
return false;
}
return true;
}
Em seguida, você pode usar esse valor para determinar se deve ou não fazer qualquer outra coisa como isto:
protected void Button1_Click(object sender, EventArgs e)
{
if (LoginCheck())
{
Session.RemoveAll();
Button1.PostBackUrl = "~/Default.aspx";
Response.Redirect("~/Default.aspx");
}
}
Outras dicas
Eu acho que isso é o que você quer (mas não é tão bom de uma idéia):
protected void LoginCheck()
{
if (Session["Login_Status"] == null || Session["Login_Status"] == "false")
{
MessageBoxShow("Please Login!");
Response.End();
}
}
Esta é uma má idéia
Se alguém está lendo o seu código, eles estão indo para supor que, após Logincheck () que Session.RemoveAll () ... será chamado. Se você fizer algum truque na LoginCheck que as mudanças que ele vai ser muito confuso lendo Button_Click1 (...)