EF6.1.2,ASP.NET MVC 5.2.7环境
我必须承认,起初我以为我会发疯。我注意到在调用update-database之后,当我没有想到它时,我们的数据库字段之一就可以为空。我在团队中四处询问,没有人故意改变字段的可空性。
花了我一段时间才找到原因,但看起来归结于开发人员在实体属性中添加了ASP.NET MVC属性[AllowHtml]
,覆盖了现有的[Required]
属性。我不得不通过查找其他示例,检查它们是否也可以为空,并删除[AllowHtml]
来检查这是否触发了将其从Nullable更改为Non-Nullable字段,以进行多次验证。
我已检查确保没有人向该应用程序添加任何奇怪的新约定等。似乎没有什么习惯。
有没有其他人看到过此消息,有人知道我们是否可以通过某种方式禁用此消息吗?我正在将实体与MVC专用的东西隔离开来,但是要花一些时间才能完成,现在我知道了,我热衷于对现有实例进行排序。