OleDBParameterCollection只接受非空值OleDbparmeter类型对象

时间:2015-09-04 14:16:03

标签: c# database oledbparameter

 lala.Parameters.Add(new OleDbParameter("@Base", OleDbType.SmallInt).Value = textBox15.Text);
 textBox15.Text = reader["@Base"].ToString();

第一行代码中出现以下错误

  

OleDBParameterCollection只接受非空值OleDbparmeter   类型对象

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

new OleDbParameter("@Base", OleDbType.SmallInt).Value = textBox15.Textstring类型的赋值表达式。因此lala.Parameters.Add(new OleDbParameter("@Base", OleDbType.SmallInt).Value = textBox15.Text);实际上正在调用OleDbParameterCollection.Add Method (Object)https://msdn.microsoft.com/en-us/library/ms136047(v=vs.110).aspx)。显然string不是OleDbParameter对象。

正确的方法是使用局部变量:

var parameter = new OleDbParameter("@Base", OleDbType.SmallInt);
parameter.Value = textBox15.Text;
lala.Parameters.Add(parameter);