c# - TransactionScope 抛出异常 "This platform does not

TransactionScope 抛出异常。我正在使用 ASP.NET Core 和 Core 3.0。

我在 Windows 本地遇到以下问题:“此平台不支持分布式事务。”

我想同步两个数据库,并想使用 TransactionScope 在两个数据库中获得一致的状态。

当我使用 AppService 和 Azure Sql 将它部署到 Azure 时,它​​工作正常。

通常,当我使用 .net core 3.0 检查此链接时,它应该可以正常工作。 https://learn.microsoft.com/de-de/dotnet/api/system.transactions.transactionscope?view=netcore-3.0

希望有人能帮助我。

using (var scope = new TransactionScope())
{

   -- database1
   using (SqlConnection connection = new SqlConnection(connectionString_DB1))
   {
      using (System.Data.SqlClient.SqlCommand cmd = connection.CreateCommand())
      {
         ....
         connection.Open();
         result = cmd.ExecuteNonQuery();
      }
   }

   --database2
   using (SqlConnection connection = new SqlConnection(connectionString_DB2))
   {
      using (System.Data.SqlClient.SqlCommand cmd = connection.CreateCommand())
      {
         ....
         connection.Open();
         result = cmd.ExecuteNonQuery();
      }
   }

   scope.Complete();
}

最佳答案

除了放置using外,在using connection之后添加Close方法调用。

我只是在使用 TransactionScope 时遇到同样的错误,同时显然连接到同一个数据库并放置 using。大多数答案都说 DisposeClose 是相同的,但似乎它们不是:从我从源代码中收集到的内容来看,Close方法显式返回到池的连接,而我找不到用于 Dispose 的相同代码。

关于c# - TransactionScope 抛出异常 "This platform does not support distributed transactions.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60954904/

相关文章:

maven - Visual Studio Code 终端无法使用代理

haskell - 使用 Haskell 从麦克风捕获音频输入?

perl - 为什么我的 perl Catalyst redirect_and_detach 替换插

emacs - 如何将ctags格式文件转换为etags格式文件?

python - Flask App 进行多次登录尝试的奇怪行为

oracle - 无法使用 confluent CLI : java. sql.SQLExcepti

python-3.x - Python 3.8 将 "open"视为导入的 openpyxl 方法而

r - 将 ggpredict() 和 ggplot2() 与缩放的连续变量一起使用并尝试取消缩放它

php - 实时服务器上的 Laravel Coinbase API Http 异常错误但适用于 X

javascript - mxgraph 避免边缘重叠节点或其他边缘