如何为每个用户

时间:2016-09-03 02:28:43

标签: c# sql .net winforms login

我想创建一个登录表单,为每个用户打开单独的窗口  类型。在这个程序数据库中有3列。(用户名,密码,用户类型)这个程序中有3个用户类型(admin,manager,user)&每个用户类型都有单独的窗口。

  1. admin = Form2
  2. manager = Form3
  3. user = Form4
  4. 这是我的登录按钮代码。请帮我把它打开  每个用户类型的窗口。

    SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=c:\users\sasindu\documents\visual studio 2010\Projects\Employee Database\Employee Database\Database.mdf;Integrated Security=True;User Instance=True");
        SqlCommand cmd = new SqlCommand("select * from login where username=@username and password =@password", con);
        cmd.Parameters.AddWithValue("@username", textBox1.Text);
        cmd.Parameters.AddWithValue("@password", textBox2.Text);
    
        SqlDataAdapter sda = new SqlDataAdapter(cmd);
        DataTable dt = new DataTable();
        sda.Fill(dt);
        con.Open();
        int i = cmd.ExecuteNonQuery();
    
        con.Close();
    
        if (dt.Rows.Count > 0)
        {
            Form3 Form = new Form3();
            Form.Show();
            this.Hide();  
        }    
        else
        {
            MessageBox.Show("Please enter Correct Username and Password");
        }
    

2 个答案:

答案 0 :(得分:5)

我认为您已在登录表用户类型中添加了一列。 用户类型列具有派生管理员,用户,经理等。 然后您将轻松验证

if(dt.rows[0]["user_type"].tostring()=="Admin")
{
// which form you show

}

if(dt.rows[0]["user_type"].tostring()=="User")
{
// which form you show

}

if(dt.rows[0]["user_type"].tostring()=="Manager")
{
// which form you show

}

我希望此代码能为您提供帮助。如果有任何疑问,请发表评论。

答案 1 :(得分:1)

switch (dt.Rows[0]["user_type"].ToString().ToLower())
        {
            case "admin":
            //Show Admin form
                MessageBox.Show("admin form");
                break;
            case "user":
            //Show User form
                MessageBox.Show("user form");
                break;
            case "manager":
            //Show Manager form
                MessageBox.Show("manager form");
                break;
            default:
                MessageBox.Show("Invalid user type.");
                break;
        }