navigasyon özelliklerinin değişiklikleri saptamak olmaz Ad ve Adres özelliklerinin her ikisi de atanmış Kişi tipindeki bir nesne. Benim problemim, Kişi nesnesini veritabanından geri alırsam ve Adres özelliğini (ör. Boş Null) değiştirirseniz, e.f. değişikliği tespit etmiyor!Varlık Framework Bir navigasyon özelliğinin değişikliklerin tespit sorun yaşıyorum
using (var ctx = new EFContext())
{
Person p = ctx.People.First();
//p.Address IS NOT NULL!
p.Address = null;
var entry = ctx.Entry(p);
}
Neden Değişmeyen entry.State
geçerli: Benim kod böyle?
Düzenleme: SaveChanges'i çağırırsam, kayıt doğru şekilde kaydedilir (Adres null olur)!
2 Düzenleme: Billy önerildiği gibi yabancı anahtar özellik oluşturduk ve Görsel stüdyoda Kişi nesnesini incelemek eğer nesnenin değerlerini teftiş debugger ile kesmezsen Devlet .. Modifiye edilir Devlet değişmedi!
Düzenleme 3: Kişi nesnesini ctx.People.Include kullanarak yükleme (x => x.Address) .First(); sorunu çözer. Dahil etmeyi önlemek için bir yol var mı ve AddressId yerine Adres özelliğini değiştirmeye devam edilsin mi?
ctx.DetectChanges() öğesini çağırırsanız ne olur? – Maarten
Hiçbir şey. Sonuç aynı! – Mones