如果用户多次输入无效的用户名和密码,如何终止程序

时间:2014-02-21 00:08:06

标签: c# sql

此代码中的问题是,即使我使用无效的用户名和密码3次点击登录按钮,它也不会终止程序。所以我想要发生的是当用户输入3次无效的用户名和密码时,它将终止程序。

MessageBox.Show("Invalid username and/or password.");
pass_txt.Text = null;

int login_count = 0;
login_count = login_count + 1;
if (login_count == 3)
{
    Application.Exit();
}

2 个答案:

答案 0 :(得分:2)

int login_count = 0;
login_count = login_count + 1;

Login_count永远不会大于1,因为您在增加它之前将其初始化为0。您需要将其设置为全局,然后在不将其设置为0的情况下递增它。

你需要更接近的东西

if(failedLogin)
{
    // ...
    this.login_count++;
}

// ...
if (this.login_count == 3)
{
    Application.Exit();
}

答案 1 :(得分:1)

这样的事情可能有用。

    private void Login()
    {
        int login_count = 0;
        bool goodLogin = false;
        do
        {
            if (DoLogin())
                goodLogin = true;
            else
                login_count++;

        } while (login_count < 4 && !goodLogin);

        if (goodLogin)
        {
            //do the login stuff
        }
        else
        {
            Application.Exit();
        }
    }

    private bool DoLogin()
    {
        if (true) //do the login logic here
            return true;
        else
        {
            MessageBox.Show("Invalid username and/or password.");
            pass_txt.Text = null;
            return false;
        }
    }