Aracılığıyla paylaş


.NET Framework uygulamalarında işlem kullanarak verileri kaydetme

Dekont

Veri kümeleri ve ilgili sınıflar, uygulamaların veritabanıyla bağlantısı kesilirken uygulamaların bellekteki verilerle çalışmasını sağlayan 2000'lerin başlarındaki eski .NET Framework teknolojileridir. Bunlar özellikle kullanıcıların verileri değiştirmesine ve değişiklikleri veritabanında kalıcı hale getirebilmesine olanak tanıyan uygulamalar için kullanışlıdır. Veri kümelerinin çok başarılı bir teknoloji olduğu kanıtlanmış olsa da, yeni .NET uygulamalarının Entity Framework Core kullanmasını öneririz. Entity Framework, tablosal verilerle nesne modelleri olarak çalışmak için daha doğal bir yol sağlar ve daha basit bir programlama arabirimine sahiptir.

Ad alanını kullanarak bir işlemdeki System.Transactions verileri kaydedersiniz. TransactionScope Sizin için otomatik olarak yönetilen bir işleme katılmak için nesnesini kullanın.

Projeler System.Transactions derlemesine başvuruyla oluşturulmaz, bu nedenle işlemleri kullanan projelere el ile başvuru eklemeniz gerekir.

İşlem gerçekleştirmenin en kolay yolu, deyiminde using bir TransactionScope nesnenin örneğini oluşturmaktır. (Daha fazla bilgi için bkz. Using deyimi ve Using deyimi.) Deyimi içinde using çalışan kod işleme katılır.

İşlemi işlemek için yöntemini using bloğundaki son deyim olarak çağırın Complete .

İşlemi geri almak için yöntemini çağırmadan Complete önce bir özel durum oluşturun.

System.Transactions.dll dosyasına başvuru eklemek için

  1. Proje menüsünde Başvuru Ekle'yi seçin.

  2. .NET Sekmesinde (SQL Server projeleri için SQL Server sekmesi), System.Transactions'ı ve ardından Tamam'ı seçin.

    Projeye System.Transactions.dll başvurusu eklenir.

Bir işlemdeki verileri kaydetmek için

  • İşlemi içeren using deyiminde verileri kaydetmek için kod ekleyin. Aşağıdaki kod, using deyiminde bir TransactionScope nesnenin nasıl oluşturulacağını ve örneği oluşturulacağını gösterir:

    using (System.Transactions.TransactionScope updateTransaction = 
        new System.Transactions.TransactionScope())
    {
        // Add code to save your data here.
        // Throw an exception to roll back the transaction.
    
        // Call the Complete method to commit the transaction
        updateTransaction.Complete();
    }