Почему строковое свойство должно быть объявлено как строка, допускающая значение NULL, в Entity Framework Core, когда соC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Почему строковое свойство должно быть объявлено как строка, допускающая значение NULL, в Entity Framework Core, когда со

Сообщение Anonymous »

Версия Entity Framework Core — 8.0.
Вот моя модель.

Код: Выделить всё

    public class Item
{
[Key] public long ItemId { get; set; }

public string KeyNumYear { get; set; }
...
}
В базе данных KeyNumYear представляет собой столбец int, допускающий значение NULL.
У нас есть строка с нулевым значением в его поле KeyNumYear. При использовании EfCore для запроса этой строки я получаю ошибку ниже.

System.Data.SqlTypes.SqlNullValueException: 'Data is Null . Этот метод или свойство нельзя вызвать для значений NULL.

Но если я изменю его на общедоступную строку? KeyNumYear {получить; набор; , он будет выполнен успешно.
Я в замешательстве, потому что думаю, что строка уже допускает значение NULL в C#. Почему мне нужно помечать его как строку? в Entity Framework Core?

Подробнее здесь: https://stackoverflow.com/questions/789 ... ework-core
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»