System.Transactions Ruang nama
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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.