Ne arayalım?

ARAMIZA KATILIN

BİZE ULAŞIN

Adres:

E-posta:

host/bin/bilisimlife.dll

iletisim@bilisimlife.net




 
Rserit
Developer
       
 1002  
 271

The object cannot be deleted because it was not found in the objectstatemanager Hatası

Selamlar,
Entity ile bir öğeyi sildirdiğinizde "the object cannot be deleted because it was not found in the objectstatemanager" hatasını alabilirsiniz. Sorun şu ki, ayrılmış öğeleri silemezsiniz ve öğeyi iki kez ekleyemezsiniz. Aşağıdaki gibi bir şeye ihtiyacınız var.

Bir örnek vereyim, ilişkili bir tablodan bir veri sildiğinizde, diğer tablolardan da silebilir. Mesela bir siparişi sildiğinizde, siparişe bağlı olan ayrı bir ödeme detayı tablosu var diyelim, onun içindeki değerler de silinir. Yani siz siparişi sildirip sonra tekrar diğer tablodaki verileri sildirmenize gerek yok, aksi halinde böyle bir hata alırsınız.

Bunun için şöyle bir yöntem deneyebilirsiniz:

var entry = DBContext.Entry(MyCurrent);
if (entry.State == EntityState.Detached)
{DBContext.myTable.Attach(myCurrent);}
DBContext.myTable.Remove(myCurrent);

İyi çalışmalar,
Recep.

Bu gönderiyi 15.09.2017 14:57:57 tarihinde Rserit düzenledi.

Developer.