Thực sự khá dễ dàng để làm điều này, vì bạn có thể chuyển vào SqlConnection
vào LINQ to SQL DataContext
đang xây dựng. Chỉ cần chạy kết nối này trong một giao dịch và khôi phục giao dịch đó ngay sau khi bạn hoàn tất.
Đây là một ví dụ:
string output;
using (var connection = new SqlConnection("your conn.string"))
{
connection.Open();
using (var transaction = connection.StartTransaction())
{
using (var context = new YourDataContext(connection))
{
// This next line is needed in .NET 3.5.
context.Transaction = transaction;
var writer = new StringWriter();
context.Log = writer;
// *** Do your stuff here ***
context.SubmitChanges();
output = writer.ToString();
}
transaction.Rollback();
}
}