交易提供一種方式,將一組動作或作業分組成單一不可見的執行單位。 交易是具有下列屬性的作業集合:
原子數。 這可確保在特定交易下完成的所有更新都被提交並永久生效,或全部取消並回復到其先前的狀態。
一致性。 這可確保在交易下所做的變更代表從一個一致狀態轉換為另一個狀態的轉換。 例如,將支票帳戶的資金轉移至儲蓄帳戶的交易不會變更整體銀行帳戶中的金額。
隔離。 這可防止交易觀察屬於其他並行交易的未認可變更。 隔離提供並行的抽象,並確保一個交易不會對另一個交易的執行產生非預期的影響。
耐久性。 一旦認可,受控資源的更新(例如資料庫記錄)在面對失敗時將會持久保存。
Windows Communication Foundation (WCF) 提供一組豐富的功能,可讓您在 Web 服務應用程式中建立分散式交易。
WCF 實作 WS-AtomicTransaction (WS-AT) 通訊協定的支援,讓WCF 應用程式能夠將交易流向可互通的應用程式,例如使用第三方技術所建置的可互通 Web 服務。 WCF 也會實作 OLE Transactions 通訊協定的支援,這可用於您不需要 Interop 功能來啟用交易流程的案例中。
您可以使用應用程式組態檔來設定系結來啟用或停用交易流程,以及在系結上設定所需的交易通訊協定。 此外,您可以使用組態檔,在服務級別設定交易逾時。 如需詳細資訊,請參閱 啟用交易流程。
命名空間中的 System.ServiceModel 交易屬性可讓您執行下列動作:
使用 ServiceBehaviorAttribute 屬性設定交易逾時和隔離等級篩選。
啟用交易功能,並使用OperationBehaviorAttribute屬性設定交易完成的行為。
在合約方法中,需求使用 ServiceContractAttribute 和 OperationContractAttribute 屬性,以要求、允許或拒絕交易流程。
如需詳細資訊,請參閱 ServiceModel 交易屬性。