有没有办法将 System.Transactions 与连接池一起使用?

发布于 2024-08-06 03:52:51 字数 687 浏览 3 评论 0原文

我认为 Framework 2.0 中的 System.Transaction 类是一个很棒的工具,设计精良,旨在简化处理事务时的代码。

但是,(但是),如果不升级为分布式事务,就不可能使用与同一数据库有多个连接(相同的连接字符串)的那些类。

http://social .msdn.microsoft.com/forums/en-US/adodotnetdataproviders/thread/3ce488eb-55a8-4535-adc7-c5b29a1523b5/

单个事务下具有相同连接字符串的多个连接,提升事务?

Microsoft 正在努力解决此问题,但与此同时,任何人知道一个可靠、简单的解决方法来允许连接池机制,同时保持使用 System.Transactions 的能力吗?是否可以?

I think the System.Transaction classes in Framework 2.0 are a great tool, well designed, aimed to simplify code when working with transactions.

But, (big but), it's impossible to use those classes with multiple connections to the same database (same connection string) without promoting to distributed transactions.

http://social.msdn.microsoft.com/forums/en-US/adodotnetdataproviders/thread/3ce488eb-55a8-4535-adc7-c5b29a1523b5/

Multiple Connections With Same Connection String Under A Single Transaction, Elevated Transaction?

Microsoft is working to solve this, but meanwhile ¿anyone knows a reliable, simple workaround to allow connection pooling mechanism while keeping the ability to use System.Transactions? Is it possible?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

枫以 2024-08-13 03:52:51

不确定您想要实现什么:

  • 如果连接到不同的数据库,您需要分布式事务。
  • 如果连接进入同一个数据库,则可以在代码中控制连接的打开。为什么要打开许多连接,您可以将连接对象作为参数发送并重用它吗?

编辑:

我同意下面的评论,最好根据需要打开和关闭连接。但是,如果连接是事务的一部分,它将不会返回到池中,在这种情况下,您可以尝试重用它。

Not sure what you are trying to achieve:

  • If the connections go to different databases you need distributed transactions.
  • If the connections go the same database, the opening of connections could be controlled in your code. Why are you opening many connections, could you send the connection object as a parameter and reuse it.

EDIT:

I agree with the comments below that it is best to open and close connections as required. But if a connection is part of a transaction it will not be returned to the pool, in that case you could try to reuse it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文