EF6.1.2, среда ASP.NET MVC 5.2.7
Должен признать, сначала я думал, что схожу с ума. Я заметил, что одно из наших полей базы данных стало обнуляемым, когда я не ожидал этого после вызова update-database. Я расспросил команду, и никто сознательно не изменил обнуляемость поля.
Мне потребовалось некоторое время, чтобы выяснить причину, но похоже, что дело дошло до того, что разработчик добавил атрибут ASP.NET MVC [AllowHtml]
в свойство объекта, переопределив существующие атрибуты [Required]
. Я должен был проверить это несколько раз, найдя другие примеры, проверив, что они тоже могут быть обнуляемыми, и удалив [AllowHtml]
, чтобы проверить, вызвало ли это изменение с полей Nullable на Non-Nullable.
Я проверил, чтобы никто не добавлял какие-либо странные новые соглашения и т. Д. В приложение. Похоже, ничего особенного.
Кто-нибудь еще видел это, и кто-нибудь знает, можем ли мы каким-то образом отключить это? Я нахожусь в процессе изоляции сущностей от MVC-специфичных вещей, подобных этому, но это займет некоторое время, чтобы завершить, и теперь я знаю об этом, я стремлюсь сортировать существующие экземпляры.