gpt4 book ai didi

asp.net-mvc - 如何在 .net MVC 中创建安全的每个 Web 请求事务?

转载 作者:行者123 更新时间:2023-12-01 21:49:20 25 4
gpt4 key购买 nike

我需要在其处理的每个 Web 请求中实现整个应用程序的事务性。

我需要启动事务,如果 Controller 中没有异常,则提交它。否则,回滚。

到目前为止,我有以下实现:

  • 首先,我在 Controller 上创建事务作为依赖项。
  • 然后,我开始处理 Controller /服务/存储库/其他内容。
  • 最后,主抽象 Controller 类执行其 OnActionExecuted 方法,我可以在其中提交或不提交。

这是我使用的技术列表:

  • MVC 4
  • 忍者
  • 自动映射器
  • 服务模式

现在,我想知道的是死锁怎么办?当两个 Web 请求同时处理时会发生什么,此外它们还将获得使用两个存储库(链接到它们的 DataContext 实例)的权利,以及这意味着数据库中有两个表

例如:一个请求首先想要读取表 Table1,然后读取 Table2,同时另一个请求想要使用 Table2然后使用Table1

我应该做什么?

最佳答案

您可以处理调用数据库的事务的启动和停止,请检查此

How to prevent EntityFramework deadlock when concurrently running these two statements

希望这有帮助

关于asp.net-mvc - 如何在 .net MVC 中创建安全的每个 Web 请求事务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15250715/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com