В базе данных создана следующая хранимая процедура:
@se_code_melli varchar(10) = NULL,
@se_name nvarchar(30) = NULL,
@se_family nvarchar(30) = NULL,
@se_name_uni nvarchar(100) = NULL,
@se_name_reshte_tahsili nvarchar(50) = NULL
С помощью приведенных ниже команд я хочу запустить хранимую процедуру из моей программы на C #:
if (comboBox11.SelectedIndex == -1)
{
comboBox11.SelectedValue = DBNull.Value;
}
if (comboBox12.SelectedIndex == -1)
{
comboBox12.SelectedValue = DBNull.Value;
}
sqlParams = new SqlParameter[]
{
new SqlParameter { ParameterName = "@se_code_melli", Value = (String.IsNullOrEmpty(textBox23.Text) ? DBNull.Value : (object)textBox23.Text)},
new SqlParameter { ParameterName = "@se_name", Value = (String.IsNullOrEmpty(textBox22.Text) ? DBNull.Value : (object)textBox22.Text)},
new SqlParameter { ParameterName = "@se_family", Value = (String.IsNullOrEmpty(textBox21.Text) ? DBNull.Value : (object)textBox21.Text)},
new SqlParameter { ParameterName = "@se_name_uni", Value =comboBox11.SelectedValue},
new SqlParameter { ParameterName = "@se_name_reshte_tahsili", Value =comboBox12.SelectedValue}
};
using (SamenEntities dbContext = new SamenEntities())
{
dataGridView1.DataSource = dbContext.Database.SqlQuery<SamenEntities>("storedProcedureName", sqlParams).SingleOrDefault();
}
Но я получаю следующую ошибку:
System.Data.SqlClient.SqlException: 'Параметризованный запрос' (@se_code_melli nvarchar (10), @ se_name nvarchar (4000), @ se_family 'ожидает параметр' @se_name_uni ', который не был предоставлен.'
Я пытался решить проблему NULL, но мне не удалось.