共用方式為


System.Transactions 所提供的功能

本節說明如何使用 命名空間所提供的 System.Transactions 功能來撰寫您自己的交易應用程式和資源管理員。 具體來說,本節涵蓋如何創建及參與涉及一位或多位參與者的交易(本機或分散式)。

System.Transactions 概觀

命名空間中 System.Transactions 類別所提供的基礎結構,藉由支援在 SQL Server、ADO.NET、消息佇列(MSMQ)和Microsoft分散式交易協調器 (MSDTC) 中起始的交易,讓交易程式設計變得簡單且有效率。 命名空間 System.Transactions 會根據 Transaction 類別提供明確的程序設計模型,以及使用 TransactionScope 類別的隱含程序設計模型,其中交易會自動由基礎結構管理。 如需如何使用這兩種模型建立交易式應用程式的詳細資訊,請參閱 撰寫交易式應用程式

System.Transactions命名空間也提供類型,讓您實作資源管理員。 資源管理員負責管理交易中使用的持久性或易失性數據,同時與交易管理員合作,確保應用程式的原子性和隔離性。 基礎結構所提供的 System.Transactions 交易管理員支援涉及多個變動性資源或單一永久性資源的交易。 如需實施資源管理器的詳細資訊,請參閱 實施資源管理器

交易管理員也會透過與像 DTC 這樣的磁碟型交易管理員協調,將本機交易透明地升級為分散式交易,當額外的持久性資源管理員加入交易時。 基礎結構提供增強的效能有兩種主要方式 System.Transactions

命名空間 System.Transactions 會定義三種信任層級 - AllowPartiallyTrustedCallers (APTCA)、DistributedTransactionPermission(DTP) 和完全信任 ,以限制存取其公開的資源類型。 如需各種信任層級的詳細資訊,請參閱 存取資源中的安全性信任層級

本節中

撰寫交易式應用程式

System.Transactions命名空間提供兩個模型來建立交易式應用程式。 使用交易範圍實作隱含交易 描述命名空間如何使用 System.Transactions 類別建立隱含交易 TransactionScope

使用 CommitableTransaction 實作明確交易 描述命名空間如何 System.Transactions 支援使用 CommittableTransaction 類別建立明確交易。

如需有關撰寫交易式應用程式的其他主題,請參閱 撰寫交易式應用程式

實作資源管理器

若要實作可以參與交易的資源管理程式,請參閱 資源管理程式的實作。 本節涵蓋資源登記、認可交易、失敗后復原,以及優化最佳做法。