Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu bölümde, kendi işlem uygulamanızı ve kaynak yöneticinizi System.Transactions yazmak için ad alanı tarafından sağlanan özellikleri nasıl kullanabileceğiniz açıklanmaktadır. Özellikle, bu bölümde bir veya birden çok katılımcıyla bir işlemin (yerel veya dağıtılmış) nasıl oluşturulacağı ve bunlara nasıl katılılacağı ele alınıyor.
System.Transactions'e genel bakış
Ad alanındaki System.Transactions sınıflar tarafından sağlanan altyapı SQL Server, ADO.NET, Message Queuing (MSMQ) ve Microsoft Dağıtılmış İşlem Düzenleyicisi'nde (MSDTC) başlatılan işlemleri destekleyerek işlemsel programlamayı basit ve verimli hale getirir. System.Transactions ad alanı, Transaction sınıfına dayanan açık bir programlama modeli ile işlemlerin altyapı tarafından otomatik olarak yönetildiği TransactionScope sınıfını kullanan örtük bir programlama modeli sağlar. Bu iki modeli kullanarak işlem uygulaması oluşturma hakkında daha fazla bilgi için bkz. İşlem Uygulaması Yazma.
Aynı zamanda System.Transactions alanı, bir kaynak yöneticisini uygulamanız için türler sağlar. Kaynak yöneticisi, bir işlemde kullanılan dayanıklı veya geçici verileri yönetir ve uygulamaya bölünmezlik ve yalıtım garantisi sağlamak için işlem yöneticisiyle işbirliği içinde çalışır. Altyapı tarafından System.Transactions sağlanan işlem yöneticisi, birden çok geçici kaynak veya tek bir dayanıklı kaynak içeren işlemleri destekler. Bir kaynak yöneticisi uygulaması hakkında daha fazla bilgi için bkz. Bir Kaynak Yöneticisi Uygulaması.
İşlem yöneticisi ayrıca, ek dayanıklı bir kaynak yöneticisi kendisini bir işlemle listelediğinde DTC gibi disk tabanlı bir işlem yöneticisiyle birlikte çalışarak yerel işlemleri saydam bir şekilde dağıtılmış işlemlere iletir. Altyapının gelişmiş performans sağlamasının System.Transactions iki temel yolu vardır.
Dinamik Yükseltme, altyapının System.Transactions yalnızca bir işlem birden fazla dağıtılmış kaynağa yayıldığında MSDTC ile etkileşim kurmasını sağlar. Dinamik yükseltme hakkında daha fazla bilgi için. İşlem Yönetimi Yükseltme konusuna bakın.
Veritabanı gibi bir kaynağın işleme katılan tek varlık olması durumunda işlemin sahipliğini almasını sağlayan Tanıtılabilir Listelemeler. Daha sonra, gerekirse System.Transactions altyapı yine de işlemin yönetimini MSDTC'ye yükseltebilir. Bu, MSDTC'yi kullanma olasılığını daha da azaltır. Tanıtılabilir Listeler,Tek Aşamalı İşleme ve Tanıtılabilir Tek Aşamalı Bildirim kullanarak iyileştirme konusunda ayrıntılı olarak ele alınmıştır.
İsim alanı System.Transactions, sunduğu kaynak türlerine erişimi kısıtlayan AllowPartiallyTrustedCallers (APTCA), DistributedTransactionPermission (DTP) ve tam güven olmak üzere üç güvenlik düzeyi tanımlar. Çeşitli güven düzeyleri hakkında daha fazla bilgi için bkz. Kaynaklara Erişme bölümünde Güvenlik Güven Düzeyleri.
Bu bölümde
İşlem uygulaması yazma
ad alanı, System.Transactions işlemsel uygulamalar oluşturmak için iki model sağlar. İşlem Kapsamı kullanılarak Örtük İşlem uygulamak, System.Transactions sınıfını kullanarak ad alanının örtük işlemler oluşturma desteğini açıklar.
CommittableTransaction kullanarak Bir Açık İşlem uygulamak , ad alanının System.Transactions sınıfını kullanarak açık işlemler oluşturmayı nasıl desteklediğini CommittableTransaction açıklar.
İşlem uygulaması yazmayı kapsayan ek konular için bkz. İşlem Uygulaması Yazma.
Bir Kaynak Yöneticisi Uygulamak
Bir işleme katılabilen bir kaynak yöneticisi uygulamak için bkz. Resource Manager Uygulama. Bu bölüm bir kaynağın listelenme, işlem yürütme, hatadan sonra kurtarma ve en iyi iyileştirme yöntemlerini kapsar.