TransactionInterop Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
DAHA önce MSDTC, COM+ veya System.Transactionsile etkileşime geçmek için yazılmış olan ve bileşenleri arasındaki System.EnterpriseServices etkileşimi kolaylaştırır. Bu sınıf devralınamaz.
public ref class TransactionInterop abstract sealed
public static class TransactionInterop
type TransactionInterop = class
Public Class TransactionInterop
- Devralma
-
TransactionInterop
Açıklamalar
Bu sınıf, işlem yayma yöntemleri sağlar. Bu işlemin nasıl çalıştığı hakkında daha fazla bilgi için bkz. İşlem Yayma.
Bu sınıf tarafından sağlanan yöntemleri kullanarak, dışarı/içeri aktarma (gönderim modeli) ve Verici/Alıcı (çekme modeli) olmak üzere iki tür işlem yayma işlemine katılabilirsiniz.
Dışarı/İçeri Aktarma (gönderme modeli) yayma işlemi aşağıdaki adımları içerir:
Uzak makinede yöntemini çağırarak bu makinenin işlem yöneticisinin "whereabouts" değerini GetWhereabouts alın. Daha sonra bu bilgi parçasını gelecekte kullanılmak üzere istemci makinesinde önbelleğe alabilirsiniz.
Tercih edilen herhangi bir yöntemi kullanarak nerede olduğunu içeren verileri istemci makinesine gönderin.
İstemci makinesinde, uzak makineye işlemi "dışarı aktarmak" için nerede olduğunu kullanın ve bir "tanımlama bilgisi" işlemi oluşturun. Bu, uzak makinenin bulunduğu yeri çağırarak GetExportCookie ve geçirerek yapılır.
"Tanımlama bilgisi" işlemini içeren verileri tercih edilen herhangi bir yöntemi kullanarak uzak makineye gönderin.
Uzak makinede, yöntemini çağırarak GetTransactionFromExportCookie istemci işleminin bir kopyasını almak için "tanımlama bilgisi" işlemini kullanın.
Uzak makinede, sınıfının veya EnlistVolatile yöntemlerini EnlistDurable kullanarak Transaction kaynak yöneticisini listelemek için kopyalama işlemini kullanın.
Verici/Alıcı (çekme modeli) yayma işlemi aşağıdaki adımları içerir:
İstemci makinesinde, işlemi kullanıldığında çağrılarak GetTransmitterPropagationTokenkarşılık gelen bir "yayma belirteci" oluşturur.
İşlemin "yayma belirtecini" içeren verileri tercih edilen herhangi bir yöntemi kullanarak uzak makineye gönderin.
Uzak makinede xref:System.Transactions.TransactionInterop.GetTransactionFromTransmitterPropagationToken%2Açağırarak <istemci işleminin bir kopyasını almak için "yayma belirtecini" kullanın.
Verici/Alıcı modeli, işlem belirtecinin uzak bir makineye gönderildiği ancak uzak makinenin işlemi elde etmek için kullanmayabileceği senaryolarda daha iyi performans sağlar. Bunun nedeni, işlem çağrılana kadar GetTransactionFromTransmitterPropagationToken yayılmamasıdır. Başka bir avantajı, yayma belirtecinin herhangi bir uzak makineye gönderilebileceği, dışarı aktarma tanımlama bilgisinin ise yalnızca nerede olduğunu sağlayan makinede kullanılabilmesidir.
Bununla birlikte, uzak işlem yöneticilerinin konumlarının tüm yayma belirteçlerinde kapsüllendiğini ve bu belirteçlerin Dışarı/İçeri Aktarma modelindeki ilgili işlem tanımlama bilgilerinden daha büyük olduğunu da unutmayın.
Alanlar
| Name | Description |
|---|---|
| PromoterTypeDtc |
Dağıtılmış işlem işlemcisinin türü. |
Yöntemler
| Name | Description |
|---|---|
| GetDtcTransaction(Transaction) |
bir öğesini temsil eden bir IDtcTransactionTransactionörneği alır. |
| GetExportCookie(Transaction, Byte[]) |
İşlem nesnesini dışarı aktarma işlemi tanımlama bilgisine dönüştürür. |
| GetTransactionFromDtcTransaction(IDtcTransaction) |
Belirtilen Transactionbir içinden bir IDtcTransaction oluşturur. |
| GetTransactionFromExportCookie(Byte[]) |
Belirtilen dışarı Transaction aktarma tanımlama bilgisinden bir oluşturur. |
| GetTransactionFromTransmitterPropagationToken(Byte[]) |
Belirtilen verici yayma belirtecinden bir Transaction örnek oluşturur. |
| GetTransmitterPropagationToken(Transaction) |
Belirtilen Transactioniçin bir yayma belirteci oluşturur. |
| GetWhereabouts() |
Kullanan dağıtılmış işlem yöneticisinin Whereabouts'ını System.Transactions alır. |