如何檢查dotnet交易是否已關閉?如何檢查Dotnet事務是否回滾?
回答
using(TransactionScope scope = new TransactionScope(TransactionScopeOption.RequiresNew)){
try{
//Do something;
scope.Complete(); //denotes the transaction completed successful.
}
catch(TransactionAbortedException ex)
{
//scope.Complete(); is never called, the transaction rolls back automatically.
}
catch(ApplicationException ex)
{
}
}
如果你是SQL服務器上,您可以使用DBCC OPENTRAN
你的標題問一件事,你的問題問另一個。所以,我要和你的頭銜一起去。
如果你想知道,如果事務回滾或設置爲僅回滾,可以檢查
transaction.WasRolledBack // true if transaction is rolled back
這裏,transaction
是ITransaction
編輯的一個實例(根據您的評論):
var isRolledBack = false;
using (var connection = new SqlConnection())
{
using (var transaction = connection.BeginTransaction())
{
try
{
// do your stuff here with transaction
}
catch (Exception ex)
{
transaction.Rollback();
isRolledBack = true;
throw;
}
}
}
現在,你可以檢查isRolledBack
標誌,看是否TRANSAC重刑回滾
我很抱歉......因爲這個錯誤 - 我的意思是在標題和主題中的差異。我在C#中使用SqlTransaction。我不確定...關於ITransaction – Relativity 2010-12-16 00:38:01
@Anish:更新了sql事務的答案 – 2010-12-16 01:07:55
Transaction.Rollback()也可以引發異常。你也應該抓住這些。 – Dan 2016-05-31 12:59:36
- 1. 顯式事務回滾是否必需?
- 2. Hibernate事務回滾是否工作?
- 3. CMT回滾:如何回滾事務
- 4. ADO.NET檢查是否可能回滾
- 5. 如何檢查網頁是否滾動?
- 6. 如何檢查ScrollView是否可滾動
- 7. 如何檢查psnet中的dotnet恢復是否正常?
- 8. 事務回滾?
- 9. 事務回滾
- 10. 回滾事務
- 11. 如何檢查System.Data.SqlClient.SqlTransaction是否有活動事務?
- 12. 如何檢查我們是否處於SQLite事務中?
- 13. 如何檢查它是否返回null?
- 14. 如何檢查UpdatePanel是否回發?
- 15. 如何檢查比較迴文是否?
- 16. 如何檢查是否返回爲空?
- 17. 如何檢查SqlDataSource.SelectCommand是否返回null
- 18. Python如何檢查是否返回
- 19. 如何檢查服務是否停止
- 20. 在原始查詢中將事務回滾事務回滾不起作用
- 21. 檢查事件是否爲
- 22. 回滾事務SQL
- 23. EJB3事務回滾
- 24. Redis事務回滾
- 25. EF6事務回滾
- 26. VB.NET - 事務回滾
- 27. 我如何檢查服務器是否在android中回覆?
- 28. INSERT AFTER或UPDATE AFTER觸發器內的回滾是否回滾整個事務
- 29. 如何在EntityFramework中回滾事務?
- 30. 如何在JPA中回滾事務?
我需要檢查通過dotnet代碼 – Relativity 2010-12-16 00:23:49
這是非常清楚的問題,它不是爲SQL Server。 – 2010-12-16 00:29:14