EF对一个或多个实体验证失败异常解决办法

Entity Framework是一个C# ORM框架 , 可以很便捷的开辟Web程序 , 当然也可以在WInform程序中挪用 , 可是EF呈现异常的时辰 , 经常会提醒一个或多个实体验证掉败 。 此时我们调试的时辰可能发现问题比力坚苦 。 本文本家儿要给大师介绍下若何去定位问题然后解决问题 。

需要这些哦
VS2017
Entity FrameWork
方式/
1起首 , 这是我在程序调试时 , 呈现的一个问题 , 如下所示 。 程序抛出异常 有一个或者多个实体验证掉败 。 此时异常跑出来之后 , 一般我们会点击异常 , 然后查看具体信息 , 成果就发现属性那么多 , 到底看哪个呢?咱们接着往下看 。

EF对一个或多个实体验证失败异常解决办法

文章插图

2点开异常信息 , 查看EntityvalidationErrors选项 , 如下所示 。 我们看到Count=2 , 申明有两处异常信息 。 也就是说我们的程序报错 , 有两处处所验证没经由过程 。

EF对一个或多个实体验证失败异常解决办法

文章插图

3【EF对一个或多个实体验证失败异常解决办法】然后点开EntityvalidationErrors选项卡 , 会发现一个列表 , 0和1就是我们程序报错的处所 。 这里 , 我们一一申明 。 后面的申明文字代表我们的Entity有异常 , 也就是说异常信息呈现在实体验证上面 。

EF对一个或多个实体验证失败异常解决办法

文章插图

4我们点开0 , 然后可以看到以下选项卡 。 这选项卡这里有个ValidationError选项 , 这个会提醒那个实体信息犯错了 , Entity选项会显示出 , 当前错误实体的数据信息 , 本家儿要包罗哪个字段的值是什么 。

EF对一个或多个实体验证失败异常解决办法

文章插图

5点击开ValidationError , 其错误信息显示如下 。 此中是NumberCode字段错误 , 错误信息是“字段信息必需是最大值为3的字符或者数组”申明字段的值跨越了和数据库中的设置的最大的长度 。

EF对一个或多个实体验证失败异常解决办法

文章插图

6最后我们查看下数据库 , 如下所示 , 数据内外面设置的最大长度是3 , 是以可以鉴定是数据库设置字符长度不敷 , 若是是代码逻辑没问题 , 那么我们点窜下数据表 , 若是是代码逻辑有问题 , 那么我们就在代码中加验证 。

EF对一个或多个实体验证失败异常解决办法

文章插图

注重事项编写代码时必然要注重加验证前提 , 防止用户输入不正当的信息 。

以上内容就是EF对一个或多个实体验证失败异常解决办法的内容啦 , 希望对你有所帮助哦!

    推荐阅读