如何:使用事务封闭数据提交 (LINQ to SQL)

更新:November 2007

您可以使用 TransactionScope 来封闭您提交到数据库的数据。有关更多信息,请参见事务 (LINQ to SQL)

示例

下面的代码将数据库提交数据封闭在 TransactionScope 中。

Dim db As New Northwnd("c:\northwnd.mdf")
Using ts = New TransactionScope()
    Try

        Dim prod1 = db.Products.First(Function(p) p.ProductID = 4)
        Dim prod2 = db.Products.First(Function(p) p.ProductID = 5)
        prod1.UnitsInStock -= 3
        prod2.UnitsInStock -= 5
        db.SubmitChanges()

    Catch e As Exception
        Console.WriteLine(e.Message)
    End Try
End Using
Northwnd db = new Northwnd(@"c:\northwnd.mdf");
using (TransactionScope ts = new TransactionScope())
{
    try
    {
        Product prod1 = db.Products.First(p => p.ProductID == 4);
        Product prod2 = db.Products.First(p => p.ProductID == 5);
        prod1.UnitsInStock -= 3;
        prod2.UnitsInStock -= 5;
        db.SubmitChanges();
    }
    catch (Exception e)
    {
        Console.WriteLine(e.Message);
    }
}

请参见

概念

下载示例数据库 (LINQ to SQL)

事务 (LINQ to SQL)

其他资源

生成和提交数据更改 (LINQ to SQL)