OleDBParameterCollection принимает только ненулевые значения объектов типа OleDbparmeter

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

Следующая ошибка возникает в первой строке кода

OleDBParameterCollection принимает только ненулевые значения объектов типа OleDbparmeter

Какие-либо предложения?

1 ответ

Решение

new OleDbParameter("@Base", OleDbType.SmallInt).Value = textBox15.Text является выражением присваивания типа string, Так 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);
Другие вопросы по тегам