【问题标题】:.net core 2 preview 2 transaction scope.net core 2 preview 2 事务范围
【发布时间】:2017-12-05 10:25:43
【问题描述】:

我的应用程序使用带有 dapper 和 ASP.NET core 2 preview 2 的 SQL Server。我正在使用带有单个数据库的存储库模式。我为每个实体编写了一个存储库。在业务层中,我将借助事务范围内的单独连接对象注入每个存储库。这种模式是分布式事务吗?或者 SQL Server 是否将其视为本地事务。因为.NET core不支持分布式事务?或者我可以使用 .NET 框架来代替它吗?

【问题讨论】:

    标签: sql-server asp.net-core .net-core dapper


    【解决方案1】:

    这将是一个分布式事务,即使 .NET Core 允许它,这也是一种不好的做法。

    而是为两个存储库注入一个 SqlConnection,并在 SqlConnection 上管理事务。

    如果您没有 TransactionScope 或 EF,您可能必须在 SqlConnection 上显式使用 TSQL BEGIN TRANSACTION/COMMIT,否则 SqlCommand 必须显式登记(您不想这样做)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-16
      • 1970-01-01
      • 2018-01-13
      • 2017-11-23
      • 1970-01-01
      相关资源
      最近更新 更多