Dil

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

Uyarı

Sınıf DataSet 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. Teknolojiler ö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ümeleri başarısı kanıtlanmış bir teknoloji olsa da, yeni .NET uygulamaları için önerilen yaklaşım Entity Framework Core kullanmaktır. 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.

System.Transactions ad alanını kullanarak bir işlemde veri 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, bir TransactionScope nesnesini using deyiminde örneklendirmektir. (Daha fazla bilgi için bkz Using deyimi ve Using deyimi.) using deyimi içindeki kod, işleme dahil olur.

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

İşlemi geri almak için, Complete yöntemini çağırmadan önce bir özel durum fırlatın.

System.Transactions.dll referansı 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 referansı 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 nesnesinin nasıl oluşturulup örneklendirileceğini 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();
    }