Bagikan melalui


System.Transactions Ruang nama

Berisi kelas yang memungkinkan Anda menulis aplikasi transaksional dan manajer sumber daya Anda sendiri. Secara khusus, Anda dapat membuat dan berpartisipasi dalam transaksi (lokal atau terdistribusi) dengan satu atau beberapa peserta.

Kelas

CommittableTransaction

Menjelaskan transaksi yang dapat diterapkan.

DependentTransaction

Menjelaskan klon transaksi yang memberikan jaminan bahwa transaksi tidak dapat dilakukan sampai aplikasi beristirahat mengenai pekerjaan pada transaksi. Kelas ini tidak dapat diwariskan.

DistributedTransactionPermission

Izin yang diminta oleh System.Transactions ketika manajemen transaksi diekskalasi ke MSDTC. Kelas ini tidak dapat diwariskan.

DistributedTransactionPermissionAttribute

Memungkinkan tindakan keamanan untuk DistributedTransactionPermission diterapkan ke kode menggunakan keamanan deklaratif. Kelas ini tidak dapat diwariskan.

Enlistment

Memfasilitasi komunikasi antara peserta transaksi terdaftar dan manajer transaksi selama fase akhir transaksi.

PreparingEnlistment

Memfasilitasi komunikasi antara peserta transaksi terdaftar dan manajer transaksi selama fase Persiapan transaksi.

SinglePhaseEnlistment

Menyediakan serangkaian panggilan balik yang memfasilitasi komunikasi antara peserta yang terdaftar untuk Penerapan Fase Tunggal dan manajer transaksi saat SinglePhaseCommit(SinglePhaseEnlistment) pemberitahuan diterima.

SubordinateTransaction

Mewakili transaksi non-root yang dapat didelegasikan. Kelas ini tidak dapat diwariskan.

Transaction

Mewakili transaksi.

TransactionAbortedException

Pengecualian yang dilemparkan ketika operasi dicoba pada transaksi yang telah digulung balik, atau upaya dilakukan untuk melakukan transaksi dan transaksi dibatalkan.

TransactionEventArgs

Menyediakan data untuk peristiwa transaksi berikut: DistributedTransactionStarted, TransactionCompleted.

TransactionException

Pengecualian yang dilemparkan ketika Anda mencoba melakukan pekerjaan pada transaksi yang tidak dapat menerima pekerjaan baru.

TransactionInDoubtException

Pengecualian yang dilemparkan ketika operasi dicoba pada transaksi yang diragukan, atau upaya dilakukan untuk melakukan transaksi dan transaksi menjadi InDoubt.

TransactionInformation

Memberikan informasi tambahan mengenai transaksi.

TransactionInterop

Memfasilitasi interaksi antara System.Transactions komponen dan yang sebelumnya ditulis untuk berinteraksi dengan MSDTC, COM+, atau System.EnterpriseServices. Kelas ini tidak dapat diwariskan.

TransactionManager

Berisi metode yang digunakan untuk manajemen transaksi. Kelas ini tidak dapat diwariskan.

TransactionManagerCommunicationException

Pengecualian yang dilemparkan ketika manajer sumber daya tidak dapat berkomunikasi dengan manajer transaksi.

TransactionPromotionException

Pengecualian yang dilemparkan ketika promosi gagal.

TransactionScope

Membuat transaksi blok kode. Kelas ini tidak dapat diwariskan.

Struct

TransactionOptions

Berisi informasi tambahan yang menentukan perilaku transaksi.

Antarmuka

IDtcTransaction

Menjelaskan transaksi DTC.

IEnlistmentNotification

Menjelaskan antarmuka yang harus diterapkan manajer sumber daya untuk menyediakan panggilan balik pemberitahuan penerapan dua fase untuk manajer transaksi setelah mendaftar untuk partisipasi.

IPromotableSinglePhaseNotification

Menjelaskan objek yang bertindak sebagai delegasi penerapan untuk internal transaksi yang tidak terdistribusi ke manajer sumber daya.

ISimpleTransactionSuperior

Mewakili transaksi yang bukan transaksi akar, tetapi dapat diekskalasi untuk dikelola oleh MSDTC.

ISinglePhaseNotification

Menjelaskan objek sumber daya yang mendukung pengoptimalan penerapan fase tunggal untuk berpartisipasi dalam transaksi.

ITransactionPromoter

Menjelaskan transaksi yang didelegasikan untuk transaksi yang ada yang dapat diekskalasi untuk dikelola oleh MSDTC saat diperlukan.

Enum

DependentCloneOption

Mengontrol jenis transaksi dependen apa yang akan dibuat.

EnlistmentOptions

Menentukan apakah objek harus terdaftar selama fase persiapan.

EnterpriseServicesInteropOption

Menentukan bagaimana transaksi terdistribusi berinteraksi dengan transaksi COM+.

IsolationLevel

Menentukan tingkat isolasi transaksi.

TransactionScopeAsyncFlowOption

Menentukan apakah aliran transaksi di seluruh kelanjutan utas diaktifkan untuk TransactionScope.

TransactionScopeOption

Menyediakan opsi tambahan untuk membuat cakupan transaksi.

TransactionStatus

Menjelaskan status transaksi terdistribusi saat ini.

Delegasikan

HostCurrentTransactionCallback

Menyediakan mekanisme bagi lingkungan hosting untuk memberikan gagasan defaultnya sendiri tentang Current.

TransactionCompletedEventHandler

Mewakili metode yang menangani TransactionCompleted peristiwa Transaction kelas.

TransactionStartedEventHandler

Mewakili metode yang akan menangani DistributedTransactionStarted peristiwa TransactionManager kelas.

Keterangan

Infrastruktur ini System.Transactions membuat pemrograman transaksional menjadi sederhana dan efisien di seluruh platform dengan mendukung transaksi yang dimulai di SQL Server, ADO.NET, MSMQ, dan Koordinator Transaksi Terdistribusi Microsoft (MSDTC). Ini menyediakan model pemrograman eksplisit berdasarkan Transaction kelas , serta model pemrograman implisit menggunakan TransactionScope kelas , di mana transaksi secara otomatis dikelola oleh infrastruktur. Sangat disarankan agar Anda menggunakan model implisit yang lebih mudah untuk pengembangan. Untuk memulai, lihat topik Menerapkan Transaksi Implisit Menggunakan Cakupan Transaksi . Untuk informasi selengkapnya tentang menulis aplikasi transaksional, lihat Menulis Aplikasi Transaksional.

System.Transactions juga menyediakan jenis bagi Anda untuk mengimplementasikan manajer sumber daya. Manajer transaksi asli untuk System.Transactions infrastruktur memungkinkan sumber daya volatil atau satu pendaftaran sumber daya tahan lama untuk berkomitmen atau menggulung balik secara efisien. Untuk informasi selengkapnya tentang menerapkan manajer sumber daya, lihat Menerapkan Resource Manager.

Manajer transaksi juga secara transparan meningkatkan transaksi lokal ke transaksi terdistribusi dengan mengoordinasikan melalui manajer transaksi berbasis disk seperti DTC, ketika manajer sumber daya tahan lama tambahan mendaftarkan dirinya dengan transaksi. Terdapat dua cara utama agar infrastruktur System.Transactions memberikan performa yang ditingkatkan.

  • Eskalasi Dinamis, yang berarti bahwa System.Transactions infrastruktur hanya melibatkan MSDTC ketika benar-benar diperlukan untuk transaksi. Area ini tercakup secara mendalam dalam topik Eskalasi Manajemen Transaksi .

  • Pendaftaran yang Dapat Dipromosikan, yang memungkinkan sumber daya, seperti database, untuk mengambil kepemilikan transaksi jika pemilik adalah satu-satunya entitas yang berpartisipasi dalam transaksi. Nantinya, jika diperlukan, System.Transactions infrastruktur masih dapat meningkatkan manajemen transaksi ke MSDTC. Hal ini dapat lebih lanjut mengurangi kemungkinan penggunaan MSDTC. Area ini tercakup secara mendalam dalam topik Pengoptimalan Menggunakan Penerapan Fase Tunggal dan Pemberitahuan Fase Tunggal yang Dapat Diprogram .

Untuk informasi selengkapnya tentang cara menggunakan System.Transactions namespace, lihat Pemrosesan Transaksi.