Wenn Sie die Eigenschaft nicht laden möchten, müssen Sie EF austricksen, damit es denkt, dass das zugehörige DataItemDetail
wird geladen.
var detailItem = new DataItemDetail { Id = d.Id };
_db.DataItemDetails.Attach(detailItem);
_db.DataItems.DeleteObject(d);
_db.SaveChanges();
Das Problem hier ist, dass die Tabellenaufteilung eine 1:1-Beziehung verwendet und EF weiß, dass es, wenn es ein Ende der Beziehung löscht, auch das andere Ende löschen sollte, aber weil Sie das andere Ende nicht geladen haben, kann es dies nicht tun.