CommittableTransaction 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
描述可認可的交易。
public ref class CommittableTransaction sealed : System::Transactions::Transaction, IAsyncResult
public sealed class CommittableTransaction : System.Transactions.Transaction, IAsyncResult
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public sealed class CommittableTransaction : System.Transactions.Transaction, IAsyncResult
[System.Serializable]
public sealed class CommittableTransaction : System.Transactions.Transaction, IAsyncResult
type CommittableTransaction = class
inherit Transaction
interface IAsyncResult
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type CommittableTransaction = class
inherit Transaction
interface IAsyncResult
[<System.Serializable>]
type CommittableTransaction = class
inherit Transaction
interface IAsyncResult
Public NotInheritable Class CommittableTransaction
Inherits Transaction
Implements IAsyncResult
- 繼承
- 屬性
- 實作
備註
CommittableTransaction
類別為應用程式提供使用交易的明確方式,而非隱含地使用 TransactionScope 類別。 與 TransactionScope 類別不同的是,應用程式寫入器需要特別呼叫 Commit 和 Rollback 方法,才能認可或中止交易。 不過,只有交易的建立者可以認可交易。 因此,無法認可透過 Transaction.Clone 方法取得的可認可交易複本。
注意
建議您使用 TransactionScope 類別建立隱含交易,以便為您自動管理環境交易內容。 您也應該 TransactionScope 針對需要跨多個函式呼叫或多個線程呼叫使用相同的交易的應用程式使用和 DependentTransaction 類別。 如需此模型的詳細資訊,請參閱 使用交易範圍實作隱含交易 主題。
CommittableTransaction建立 不會自動設定環境交易,這是程式代碼執行所在的交易。 您可以藉由呼叫全域Transaction物件的靜態Transaction.Current屬性來取得或設定環境交易。 For more information on ambient transactions, see the " Managing Transaction Flow using TransactionScopeOption" section of the Implementing An Implicit Transaction Using Transaction Scope topic. 如果未設定環境交易,資源管理員上的任何作業都不屬於該交易的一部分。 您必須明確設定並重設環境交易,以確保資源管理員在正確的交易內容下運作。
CommittableTransaction在認可 之前,所有與交易相關的資源仍會鎖定。
您無法重複使用 CommittableTransaction 物件, 一旦認可或回復之後,就無法在交易中再次使用它,或設定為目前的環境交易內容。
建構函式
CommittableTransaction() |
初始化 CommittableTransaction 類別的新執行個體。 |
CommittableTransaction(TimeSpan) |
使用指定的 |
CommittableTransaction(TransactionOptions) |
使用指定的交易選項,初始化 CommittableTransaction 類別的新執行個體。 |
屬性
IsolationLevel |
取得交易的隔離等級 (Isolation Level)。 (繼承來源 Transaction) |
PromoterType |
可唯一識別 |
TransactionInformation |
擷取交易的其他資訊。 (繼承來源 Transaction) |
方法
事件
TransactionCompleted |
指出交易已完成。 (繼承來源 Transaction) |
明確介面實作
IAsyncResult.AsyncState |
取得當做 BeginCommit(AsyncCallback, Object) 方法呼叫之最後一個參數來提供的物件。 |
IAsyncResult.AsyncWaitHandle |
取得 WaitHandle,用來等候非同步作業完成。 |
IAsyncResult.CompletedSynchronously |
取得非同步認可作業是否已同步完成的指示。 |
IAsyncResult.IsCompleted |
取得非同步認可作業是否已完成的指示。 |
ISerializable.GetObjectData(SerializationInfo, StreamingContext) |
取得 SerializationInfo,其中含有序列化這個交易所需的資料。 (繼承來源 Transaction) |
擴充方法
ToApmEnd(IAsyncResult) |
描述可認可的交易。 |
ToApmEnd<TResult>(IAsyncResult) |
描述可認可的交易。 |
適用於
執行緒安全性
此型別具備執行緒安全。