атрибут области транзакции в VB.NET - PullRequest
1 голос
/ 07 мая 2009

Мне нужно убедиться, что 2 транзакции зачислены в транзакцию

Sub InsertOrder(order)

...insert order header SQL

....insert order items SQL (LOOP)

End Sub

Я знаю, что могу сделать это с помощью области транзакции, однако, не существует ли "Атрибут" для этого?

Transaction.Scope()>_
Public Sub InsertOrder(order)

End Sub

1 Ответ

2 голосов
/ 08 мая 2009

Существует атрибут .NET, который можно использовать для транзакций. Однако он больше предназначен для распределенных транзакций между несколькими источниками данных, для которых требуется двухфазная фиксация. Атрибуты являются частью системы «Транзакция корпоративных сервисов».

Классическим способом управления транзакцией SQL является вызов методов BeginTransaction (), Commit () и Rollback () объекта SqlConnection.

Существует также модель System.Transactions, которая основана на операторе 'using' и объекте TransactionScope, о котором вы упомянули.

См. эту ссылку для ясного обзора различных вариантов.

...