我在考虑以下情况:在客户端更新两个实体,并提交带有json包的POST。在服务器端,您可以进行拦截并应用一些业务逻辑。其中一个实体的保存工作正常,但另一个实体失败。在你看来,什么是正确的解决方案,以及为什么:1.我应该做回滚并在客户端返回一个异常,或者2.提交第一个实体的更新并返回一条消息,表明保存仅适用于其中一个实体?我知道IdeaBlade的人认为saveChanges是一个单独的事务(因此所有的CRUD功能都在一个POST中),所以我认为1.应该是正确的方法。不过,我欣赏所有合理的意见。谢谢!Breeze SaveChanges部分失败
0
A
回答
1
那它取决于你在做什么。我敢打赌,如果你只是回滚,你会节省很多时间。如果您真的想要,您可以返回保存失败和成功实体的列表。然后用户(假设错误是用户错误)可以对错误的实体进行更改并仅提交它们。这可能会变得困难。微风重视a state to each entity,你现在需要管理。因此,在响应中,您需要确定哪些实体失败以及哪些实体成功了,然后更新其在客户端上的状态,否则您将重新提交您不需要的提交。我认为把这个业务逻辑放在客户端上,然后在服务器上回滚(记录事件,以便修复它),这将是一个更好的投资。这有帮助吗?
+0
你的回答很好,但我希望在我接受其中一个之前看到更多答案:) – 2013-05-13 06:27:18
+0
我听到你的男人,祝你好运,并希望你的应用程序出现良好 – mtleising 2013-05-13 22:41:27
相关问题
- 1. 春3.1部分 - NetBeans - 部署失败
- 2. 部署在JBoss上,Intellij部分失败
- 3. 如何使用Breeze js和Nancy实现SaveChanges
- 4. breeze mongo manager.saveChanges()error
- 5. 部署失败
- 6. 的rpmbuild失败安装部分
- 7. JBoss 5上的分解部署失败
- 8. fttw3创建2D计划部分失败
- 9. 验证企业bean失败[部分:16.2]
- 10. Linux上的SSL_CTX_use_PrivateKey_file失败(第2部分)
- 11. Python XML XPath部分失败消息
- 12. jQuery原型的继承部分失败
- 13. 验证失败的一个或多个实体 - SaveChanges EF4
- 14. 如何确定哪个实体在SaveChanges上失败
- 15. 实体框架SaveChanges失败增量标识列
- 16. 实体框架 - 如何处理批量SaveChanges失败
- 17. Maven部署失败?
- 18. WebLogic部署失败
- 19. Heroku部署失败
- 20. Capistrano部署失败
- 21. 得分submittion失败
- 22. 分配值失败
- 23. SonarQube分析失败
- 24. Python分区失败?
- 25. 动态分配jQuery按钮部分失败
- 26. capistrano开发部署失败
- 27. Octopus Deploy.ps1 DACPAC部署失败
- 28. 新用户部署失败
- 29. ARM模板部署失败
- 30. Tomcat热部署失败
看起来这两个实体可以/应该独立保存。如果这是您的业务逻辑,那么为什么不提交两个SaveChanges()? – pawel 2013-05-10 06:53:04
因为我需要批量保存。 – 2013-05-10 13:17:08