Скажем, у меня есть таблица в БД, определенная следующим образом
Таблица: Foo
PkId - int, primary, autoincrement
Bar - int, allow null = false, по умолчанию нет
Теперь при создании модели EF из базы данных поле 'Bar' правильно определено как Nullable = false, Type = Int32.
Теперь, когда я делаю следующее
var foo = new Foo();
context.AddToFoos(foo);
context.SaveChanges();
Строка вставляется в базу данных, а значение «Bar» равно 0? Я бы ожидал исключения, потому что Бар не был установлен. Я понимаю, что 0 не равно нулю, но также не является значением, которое я установил.
Это умышленно или я что-то неправильно понял?