关于在ASP.NET MVC 中使用EF的Code First的方式来读取数据库时的Validation failed for one or more entities. See 'EntityVal

      今天在作一个小网站的时候遇到不少问题唉,我仍是个菜鸟,懂的也很少,今天一个表单的提交按钮用不了,都弄了几个小时唉。不过最后仍是搞定了,还有浏览器有开发人员选项,否则我都不知道我还要继续排查多久哦,今天晚上在把数据存入数据库的又出现了问题。我使用的是Entity Framework的Code First模式来访问数据库的。对于数据的验证我在数据模型上加了数据注解。固然在前台也引入了一些JS这样就能够再不把数据提交到服务器时完成验证功能。在后台保存用户提交的数据的时候,咱们要用到ModelStatus.IsValid这个属性。就是判断下模型状态是否有效。若是用户所填写的数据都知足数据模型的数据注解中的条件,则ModelStatus.IsValid=true;反之ModelStatus.IsValid=false,当这个ModelStatus.IsValid=true的时候,也就是数据合法,咱们就把数据保存到数据库。可是今天我在保存保存数据的时候就遇到了异常。以下图。数据库

       可是我却找不到错误在那里。这句话说的是一个或者多个实体验证失败,详见实体验证错误属性。但是这个实体验证错误如何去找呢。其实咱们能够用C#中的tr和Catch来捕获这个异常,咱们就知道具体是错在那里了。以下图。
由于VS2015很智能哈。咱们把鼠标移动上就能够看见其中的值了。以下图。
 
咱们按着提示就能够找到这个错误吧。
由于我仍是个菜鸟哈。因此有不对的地方请各位大神指出哈
相关文章
相关标签/搜索