Aracılığıyla paylaş


.NET Framework uygulamalarında veri kümesini doldururken kısıtlamaları kapatma

Not

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.

Bir veri kümesi kısıtlamalar içeriyorsa (yabancı anahtar kısıtlamaları gibi), veri kümesine karşı gerçekleştirilen işlemlerin sırası ile ilgili hatalar oluşturabilir. Örneğin, ilgili üst kayıtları yüklemeden önce alt kayıtların yüklenmesi bir kısıtlamayı ihlal edebilir ve hataya neden olabilir. Bir alt kayıt yükler yüklemez, kısıtlama ilgili üst kaydı denetler ve bir hata oluşturur.

Geçici kısıtlamanın askıya alınmasına izin veren bir mekanizma yoksa, alt tabloya bir kayıt yüklemeyi her denediğinizde bir hata oluşurdu. Bir veri kümesindeki tüm kısıtlamaları askıya almanın bir diğer yolu da ve EndEdit özellikleridirBeginEdit.

Not

Kısıtlamalar kapatıldığında doğrulama olayları (örneğin, ColumnChanging ve RowChanging) tetiklenmez.

Güncelleştirme kısıtlamalarını program aracılığıyla askıya almak için

  • Aşağıdaki örnekte, bir veri kümesinde kısıtlama denetimini geçici olarak nasıl kapattığınız gösterilmektedir:

    dataSet1.EnforceConstraints = false;
    // Perform some operations on the dataset
    dataSet1.EnforceConstraints = true;
    

Veri Kümesi Tasarım Aracı kullanarak güncelleştirme kısıtlamalarını askıya almak için

  1. Veri kümesi Tasarım Aracı veri kümenizi açın. Daha fazla bilgi için bkz. İzlenecek Yol: Veri Kümesi Tasarım Aracı veri kümesi oluşturma.

  2. Özellikler penceresinde özelliğini olarak falseayarlayınEnforceConstraints.