我过去曾将 TransactionScope 与桌面客户端应用程序一起使用来回滚不完整的多步骤事务。这种方法似乎不太可能在 Web 应用程序中起作用。
任何人都可以建议如何在整个过程未完成时确保回滚跨多个页面的多个步骤吗? (例如,他们的浏览器崩溃或在进程中关闭浏览器)
当然,我可以写入某种临时表,然后在单个事务中将最终记录传输到真实表,但这会带来竞争条件的风险。我想开始一个事务,服务几个页面,每个页面将事务的一部分写入表,然后通过提交完成事务,如果事务未完成,则在以下情况下回滚会议结束。
还是我思考的方式不对?建议?
由于我使用的是 MVC 3、EF 4.1 和 Ninject,我不确定这将如何影响解决方案,但我想我应该包含这些信息。
没有数据库事务/TransactionScope
跨几页。即使尝试做这样的事情也是非常错误的。
您有两种选择来解决该问题:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)