无角色登录

我有一个收银系统,有两个角色,比如管理员和收银员。我需要更新我想要摆脱角色的应用程序,并且当用户输入用户名和密码时,要根据他们的角色加载表单。换句话说,我不希望用户从登录中选择角色。

我正在使用 Visual Studio 15 和 Microsoft SQL server 14。下面的代码是登录按钮。

http://img2.mukewang.com/61e28bf900014dd319161076.jpg

Form2 dash = new Form2();

    Form10 userdash = new Form10();

    DBConnection.DBC_Connection db = new DBConnection.DBC_Connection();

    DBConnection.Login lg = new DBConnection.Login();


    SqlDataAdapter sda = new SqlDataAdapter("select count(*) from Login where Type='" + comboBox1Type.Text + "' and Username='" + textBox1.Text + "'and Password='" + textBox2.Text + "'", db.creatconnection());

    DataTable dta = new DataTable();

    sda.Fill(dta);

    if (dta.Rows[0][0].ToString() == "1" && comboBox1Type.Text == "Admin")

    {

        this.Hide();

        dash.Show();

    }


    else

    {

        if (dta.Rows[0][0].ToString() == "1" && comboBox1Type.Text == "User")

        {

            this.Hide();

            userdash.Show();

        }


        else

        {

            MessageBox.Show("Invalid Login try checking Useraname Or Password !" , "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);

        }

    }

}


四季花海
浏览 189回答 2
2回答

慕的地6264312

您可以根据凭据返回类型,然后检查返回的用户类型。    Form2 dash = new Form2();    Form10 userdash = new Form10();    DBConnection.DBC_Connection db = new DBConnection.DBC_Connection();    DBConnection.Login lg = new DBConnection.Login();    SqlDataAdapter sda = new SqlDataAdapter("select * from Login where Username='" + textBox1.Text + "'and Password='" + textBox2.Text + "'", db.creatconnection());    DataTable dta = new DataTable();    sda.Fill(dta);    if(dta.Rows.Count > 0)    {        if(dta.Rows[0]["Type"].ToString() == "Admin")        {            this.Hide();            dash.Show();        }        else        {            this.Hide();            userdash.Show();        }    }    else    {        MessageBox.Show("Invalid Login try checking Useraname Or Password !" , "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);    }在 select 语句中 * 也将返回 Type。因此,如果 DataTable 有任何行,则用户已通过身份验证。现在通过检查 DataTable 中的 Type 字段来检查该用户具有什么样的角色。

吃鸡游戏

您可以使用用户表中的附加列来检查角色Create table users (username varchar2(50) not null,password varchar2(50) not null,role char not null, // this takes either 0 or 1 (admin , user)constraints PK_USERS PRIMARY KEY (username))关于您的 c# 代码:您可以执行隐藏功能并显示每个角色的必要控件。如果您有多个表单,您可以将获取的角色保存在静态变量中并完成工作。
打开App,查看更多内容
随时随地看视频慕课网APP