提交验证操作失败。请检查 Entity.ValidationErrors 的 EntitiesInError 中的每个实体的详细信息

来源:互联网 发布:福建广电网络维修电话 编辑:程序博客网 时间:2024/05/19 02:44

 使用Silverlight RIA WCF Service +MVVM+EF 4系统会每次会自动生成代码。但是有时候你修改了数据库,MODEL层就要修改,你算你分割了,自动生成的类还会出错。

还有很多的事情呢,建议删除自动生成的代码,重新在EF(entity framework)的MODEL中更新可能变更的数据库实体。一点错误,就会导致客户端验证失败。

结果无法提交到后台,RIA WCF的DomainClient只要两个映射类不同,或者差别一点点,就可能搞死。

 

验证了MVVM就是垃圾,不具备赚钱效应,不如简单的Event Model带来的开发效率好。不过调试起来你要小心意义。

 

同步开发,修改数据库是避免不了的,其实分层后,客户端和服务端层次增加了,开发难度也就增加了,从原理上将,,表面上简化了层次,结果增加了同步难度。

 

任何层次不要超过3层,这个应该是极限。要不就是自己把自己玩死。

 

我是这样解决的:

1)删除WCF RIA 自动生成的映射代码

2)服务端的MODEL重新修改了变更的数据库实体。

重新编译OK.,结果还是不行,接着我继续测试,结果有些时候可以,有些时候。

 

1)我重新查看了一下,结果发现客户端传递的字符串超过界限,结果客户端没有超过界限

解决方法:

1)我修改了数据库的字段大小将原来的nvarchar(550),修改为ntext,

2)重新加入加入数据,重新编译并且生成客户端模型,这样客户端通过,

结果这样OK。

问题的原因,这个后台的数据库验证,在前台完成了,捕获错误结果提示当前实体校验错误,可能原因就是字段类型或者长度限制问题。

正解!

原创粉丝点击