Hata: An error occurred while updating the entries. See the inner exception for details.
Entity Framework kullandığınız bir projede bu hatayı alıyorsanız sözü hiç uzatmadan muhtemel sebepleri inceleyerek bu hatadan çıkış yolunu arayalım.
Muhtemel Hata Sebepleri
İlişkisel Tablo Yapısı
ID değerleri ile ilişkilendirdiğiniz iki tablonuz varsa ve ana tablodaki Primary Key ile referans tablosundaki Foreign Key ID’leri aynı olmadığı halde context.SaveChanges() yapmaya çalışıyorsanız bu hatayı almanız muhtemeldir.
Çözüme giden yol: Üzerinde işlem yaptığınız entitylerin ID değerlerinin tutarlı olduğunu kontrol edin.
Lazy Loading
Lazy Loading’i kapatmadıysanız bu hatayla karşılaşabilirsiniz.
Çözüme giden yol: Aşağıdaki gibi bir using kod bloğu kullanıyorsanız ve SaveChanges() methodunu burada çağırıyorsanız
1 2 3 4 5 | using (Context context = new Context()) { //...codes... context.SaveChanges(); } |
Lazy Loading özelliğini disabled hale getirmek için aşağıdaki tek satırlık kodu using bloğu içinde kullanabilirsiniz.
1 | context.Configuration.LazyLoadingEnabled = false; |
Bir hatayı ele aldığımız yazının sonuna geldik. Herkese keyifli kodlamalar, mutlu günler :)!
Hay çok sağ ol be, kafayı yemek üzereydim. Lazy loading’i kaldırmak aklıma gelmedi.
merhaba, dediğiniz hatayı alıyorum ben de ve örnek veriyorum satış güncelleme veya ekleme tablosu olacak bu( aynı hatayı bu iki sayfada da aldım) güncelleme sayfasında dropdown ile çekiyor veriyi ve hiç değiştirmesem bile b hatayı alıyorum, sqlde de personelid ve personelID kısımları aynı olmasına rağmen, neden olabilir çözüm bulamadım yardımcı olur musunuz