2012-12-12 12 views
5

thể trùng lặp:
What happens to an uncommitted transaction when the connection is closed?SqlConnection.Dispose() có thực hiện khôi phục trên tất cả các giao dịch đang chờ xử lý không?

Tôi biết một SqlTransaction sẽ rollback cứ vào Dispose() (xem Will a using statement rollback a database transaction if an error occurs?), nhưng nó sẽ được cuộn lại khi mẹ của nó SqlConnection được xử lý?

+1

Bạn đã thử xem chưa? –

Trả lời

4

Có, nhưng tôi không nghĩ rằng nó được xử lý bởi lớp SqlConnection.

Tôi nghĩ rằng đó là SQL Server khi kết nối được đóng tự động quay trở lại tất cả các giao dịch không cam kết.

Đồng thời, hãy xem xét rằng SqlConnection có một nhóm kết nối theo mặc định. Vì vậy, có thể là khi bạn đóng/vứt bỏ một SqlConnection kết nối db "thực" vẫn còn hoạt động.

+2

Trong thực tế, tran sẽ vẫn mở cho đến khi kết nối được tái sử dụng! – usr

Các vấn đề liên quan