编写事务应用程序

作为事务应用程序程序员,您可以利用 System.Transactions 命名空间所提供的两种编程模型来创建事务。 可以通过采用 Transaction 类来利用显式编程模型,也可通过采用 TransactionScope 类来利用隐式编程模型(其中的事务将由基础结构自动管理)。 建议使用隐式事务模型进行开发。 有关事务范围用法的详细信息,请参阅使用事务范围实现隐式事务

这两种模型都支持在程序达到一致状态时提交事务。 如果提交成功,就会永久提交事务。 如果提交失败,事务就会中止。 如果应用程序无法成功完成事务,则会尝试中止并撤消事务的效果。

本节内容

创建事务

System.Transactions 命名空间提供了两种用于创建事务的模型。 下列主题对这两种模型进行了介绍。

使用事务范围实现隐式事务

描述 System.Transactions 命名空间如何支持使用 TransactionScope 类创建隐式事务。

使用 CommittableTransaction 执行显式事务

描述 System.Transactions 命名空间如何支持使用 CommittableTransaction 类创建显式事务。

升级事务管理

当事务需要访问其他应用程序域中的资源时,或者要登记到其他持久资源管理器时,事务会自动升级为由 MSDTC 管理。 与事务升级相关的信息将在事务管理升级主题中介绍。

并发

使用 DependentTransaction 管理并发主题演示如何通过使用 DependentTransaction 类在异步任务之间实现并发。

COM+ 互操作

与企业服务和 COM+ 事务的互操作性主题阐释如何实现分布式事务与 COM+ 事务的交互。

诊断

诊断跟踪说明如何使用 System.Transactions 基础结构生成的跟踪代码来排除应用程序中的错误。

使用 ASP.NET

Using System.Transactions in ASP.NET 主题介绍如何才能在 ASP.NET 应用程序中成功使用 System.Transactions