TransactionInterop 類別

定義

加強 System.Transactions 與元件之間的互動,這些元件是在先前所寫入,以便與 MSDTC、COM+ 或 System.EnterpriseServices 互動。 此類別無法獲得繼承。

public ref class TransactionInterop abstract sealed
public static class TransactionInterop
type TransactionInterop = class
Public Class TransactionInterop
繼承
TransactionInterop

備註

這個類別提供交易傳播的方法。 如需此程式運作方式的詳細資訊,請參閱 交易傳播

使用這個類別所提供的方法,您可以參與兩種類型的交易傳播:匯出/匯入 (推播模型) 和傳送器/接收者 (提取模型) 。

匯出/匯入 (推送模型) 傳播牽涉到下列步驟:

  1. 在遠端電腦上,呼叫 GetWhereabouts 方法來取得該機器之交易管理員的「位置」。 然後,您可以在用戶端電腦上快取這項資訊,以供日後使用。

  2. 使用任何慣用方法,將包含位置的資料傳送至用戶端電腦。

  3. 在用戶端電腦上,使用關於將交易「匯出」到遠端電腦,並產生交易 「cookie」。 這是藉由呼叫 GetExportCookie 並傳入遠端電腦的位置來完成。

  4. 使用任何慣用方法,將包含交易 「cookie」 的資料傳送至遠端電腦。

  5. 在遠端電腦上,呼叫 方法,使用交易 「cookie」 來取得用戶端交易 GetTransactionFromExportCookie 的複製品。

  6. 在遠端電腦上,使用複製交易,使用 EnlistVolatile 類別的 TransactionEnlistDurable 方法來登記資源管理員。

傳輸器/接收者 (提取模型) 傳播涉及下列步驟:

  • 在用戶端電腦上,使用交易會產生對應的「傳播權杖」,方法是呼叫 GetTransmitterPropagationToken

  • 使用任何慣用方法,將包含交易「傳播權杖」的資料傳送至遠端電腦。

  • 在遠端電腦上,呼叫 xref:System.Transactions.TransactionInterop.GetTransactionFromTransmitterPropagationToken%2A,以取得用戶端交易 < 的複製品。

傳輸器/接收者模型在將交易權杖傳送至遠端電腦的案例中提供更佳的效能,但遠端電腦可能無法使用它來取得交易。 這是因為在呼叫 之前 GetTransactionFromTransmitterPropagationToken 不會傳播交易。 另一個優點是可以將傳播權杖傳送至任何遠端電腦,而匯出 Cookie 只能用於提供其位置的電腦上。

不過,您也應該注意,遠端交易管理員的所在位置會封裝在所有傳播權杖中,使其大於來自匯出/匯入模型的對應交易 Cookie。

欄位

PromoterTypeDtc

分散式交易處理器的類型。

方法

GetDtcTransaction(Transaction)

取得表示 TransactionIDtcTransaction 執行個體。

GetExportCookie(Transaction, Byte[])

將異動物件轉換成匯出異動 Cookie。

GetTransactionFromDtcTransaction(IDtcTransaction)

從指定的 IDtcTransaction 產生 Transaction

GetTransactionFromExportCookie(Byte[])

從指定的匯出 Cookie 產生 Transaction

GetTransactionFromTransmitterPropagationToken(Byte[])

從指定的傳送者傳播權杖產生 Transaction 執行個體。

GetTransmitterPropagationToken(Transaction)

針對指定的 Transaction 產生傳送者傳播權杖。

GetWhereabouts()

取得 System.Transactions 使用之分散式交易管理員的所在資訊。

適用於