C# - 组合框选择的值

时间:2015-04-24 07:49:53

标签: c# sql-server

我正在使用此代码以便为数据库添加一些值。

string cs = "Data Source=CODRINMA\\CODRINMA;Initial Catalog=BusManager; Trusted_Connection=True;";
string insert = "INSERT INTO Autocare (IDAutocar, TipAutocar) VALUES (@IDAutocar, @TipAutocar)";

try
{
     using (SqlConnection con = new SqlConnection(cs))
     {
         con.Open();
         SqlCommand cmd = new SqlCommand(insert, con);
         cmd.Parameters.AddWithValue("@IDAutocar", txtID.Text);
         cmd.Parameters.AddWithValue("@TipAutocar", cmbTip.SelectedValue);
         int valoare = cmd.ExecuteNonQuery();
         con.Close();
         MessageBox.Show(valoare + "Autocarul a fost adaugat cu succes!");
      }
}

catch (Exception er) { MessageBox.Show(er.Message); }

在这一行 - > cmd.Parameters.AddWithValue("@TipAutocar", cmbTip.SelectedValue);我希望用户选择组合框提供的值(以其他形式完成的值),当我按下按钮将值插入数据库时​​,我有这个错误 -

  

参数化查询'(@ IDAutocar nvarchar(1),@ TipAutocar nvarchar(4000))INSERT INTO A'需要参数'@TipAutocar',这是未提供的。

有人可以给我一些帮助吗?

2 个答案:

答案 0 :(得分:1)

试试这个:

cmd.Parameters.AddWithValue("@TipAutocar",cmbTip.GetItemText(cmbTip.SelectedItem));

答案 1 :(得分:0)

SelectedValue不返回字符串。你必须使用:

cmd.Parameters.AddWithValue("@TipAutocar", cmbTip.SelectedValue.ToString());