如何在c#winforms中将登录用户的用户名插入数据库?

时间:2018-07-04 12:11:40

标签: c# winforms

在Windows窗体应用程序中,我可以将登录用户的用户名从登录表单传递到主表单。这将显示在标签中。当我要以PO形式下订单时,我想将此用户名保存到PO表中。

如何从主窗体访问PO类的用户名标签值?

登录表格:

 con.sqlquery("select count (*) from Login where UserName='" + textBox1.Text + "' and Password='" + textBox2.Text + "'");
 con.datatable();
 int count = Convert.ToInt32(con.cmd.ExecuteScalar());
 if (count == 1)
 {
     this.Hide();
     Main2 frm2 = new Main2();
     frm2.UserNameLableText(textBox1.Text);
     frm2.Show();
  }

主要形式

public void UserNameLableText(string UserName)
{
    this.lblusername.Text = UserName;
}

和PO类

public void savePurchseOrder(int Supplier_ID,string Date,string RequiredDate,double GrandTotal)
{
    DynamicConnection con = new DynamicConnection();
    Main2 main = new Main2();
    con.mysqlconnection();
    con.sqlquery("Insert into TBL_PO(Supplier_ID,Date,RequiredDate,GrandTotal) values(@Supplier_ID,@Date,@RequiredDate,@GrandTotal)");
    con.cmd.Parameters.Add(new SqlParameter("@Supplier_ID", SqlDbType.Int));
    con.cmd.Parameters["@Supplier_ID"].Value = Supplier_ID;
    con.cmd.Parameters.Add(new SqlParameter("@Date", SqlDbType.Date));
    con.cmd.Parameters["@Date"].Value = Date;
    con.cmd.Parameters.Add(new SqlParameter("@RequiredDate", SlDbType.Date));
    con.cmd.Parameters["@RequiredDate"].Value = RequiredDate;
    con.cmd.Parameters.Add(new SqlParameter("@GrandTotal", SqlDbType.Money));
    con.cmd.Parameters["@GrandTotal"].Value = GrandTotal;
    con.nonquery();
}

1 个答案:

答案 0 :(得分:-2)

您的公共空白已被覆盖:

public void savePurchseOrder(int Supplier_ID,string Date,string RequiredDate,double GrandTotal)
    {
        DynamicConnection con = new DynamicConnection();
        Main2 main = new Main2();
        con.mysqlconnection();
        con.sqlquery("Insert into TBL_PO(Supplier_ID,Date,RequiredDate,GrandTotal) values(@Supplier_ID,@Date,@RequiredDate,@GrandTotal)");
        con.cmd.Parameters.Add(new SqlParameter("@Supplier_ID", SqlDbType.Int));
        con.cmd.Parameters["@Supplier_ID"].Value = Supplier_ID;
        con.cmd.Parameters.Add(new SqlParameter("@Date", SqlDbType.Date));
        con.cmd.Parameters["@Date"].Value = Date;
        con.cmd.Parameters.Add(new SqlParameter("@RequiredDate", SqlDbType.Date));
        con.cmd.Parameters["@RequiredDate"].Value = RequiredDate;
        con.cmd.Parameters.Add(new SqlParameter("@GrandTotal", SqlDbType.Money));
        con.cmd.Parameters["@GrandTotal"].Value = GrandTotal;
        con.nonquery();
    }

It should be: 

public void savePurchseOrder(int Supplier_ID,string Date,string RequiredDate,double GrandTotal)
    {
        DynamicConnection con = new DynamicConnection();
        Main2 main = new Main2();
        con.mysqlconnection();
        con.sqlquery("Insert into TBL_PO(Supplier_ID,Date,RequiredDate,GrandTotal) values(@Supplier_ID,@Date,@RequiredDate,@GrandTotal)");
        con.cmd.Parameters.Add(new SqlParameter("@Supplier_ID", SqlDbType.Int));
        con.cmd.Parameters["@Supplier_ID"].Value = Supplier_ID;
        con.cmd.Parameters.Add(new SqlParameter("@Date", SqlDbType.Date));
        con.cmd.Parameters["@Date"].Value = Date;
        con.cmd.Parameters.Add(new SqlParameter("@RequiredDate", SqlDbType.Date));
        con.cmd.Parameters["@RequiredDate"].Value = RequiredDate;
        con.cmd.Parameters.Add(new SqlParameter("@GrandTotal", SqlDbType.Money));
        con.cmd.Parameters["@GrandTotal"].Value = GrandTotal;
        con.nonquery();
    }