вставить хранимую процедуру с установленными нулевыми параметрами в рамках сущности - PullRequest
0 голосов
/ 30 августа 2018

Я хочу вставить параметр null в некоторые значения, но получаю следующую ошибку:

System.NullReferenceException: 'Ссылка на объект не установлена ​​на экземпляр объекта. System.Windows.Forms.ListControl.SelectedValue.get вернул ноль.

Программа представляет собой приложение Windows Forms, а код выглядит следующим образом:

using (var context = new SamenEntities())
{
    person ppp = new person()
    {
        id = textBox1.Text.Trim(),
        name = textBox2.Text.Trim(),
        family = textBox3.Text.Trim(),
        birth_date = dateTimePicker1.Value,
        birth_provice = Convert.ToInt32(comboBox1.SelectedValue.ToString()),
        note = richTextBox1.Text.Trim(),
        img_personal = ImageToByteArray(pictureBox1.Image),
        date_register = DateTime.Now
    };

    context.persons.Add(ppp);
    context.SaveChanges();
}

Как ввести null значение или ввести значение по умолчанию с сервера SQL?

1 Ответ

0 голосов
/ 30 августа 2018

Посмотрев на исключение, он говорит, что ComboBox не имеет никакого выбранного значения. На этом этапе SQL Server не принимает null.

С этой информацией вы должны проверить, что выбрано одно значение, то есть оно не null, например:

object selectedValue = comboBox1.SelectedValue;

if(selectedValue != null)
{
    ppp.birth_provice = Convert.ToInt32(selectedValue.ToString()),
}

Кроме того, вы можете рассмотреть возможность использования Int32.TryParse, чтобы убедиться, что выбранное значение является действительным целым числом.

...