Jeśli nie chcesz ładować właściwości, musisz oszukać EF, aby pomyślał, że powiązany DataItemDetail
jest załadowany.
var detailItem = new DataItemDetail { Id = d.Id };
_db.DataItemDetails.Attach(detailItem);
_db.DataItems.DeleteObject(d);
_db.SaveChanges();
Problem polega na tym, że dzielenie tabeli wykorzystuje relację 1:1, a EF wie, że jeśli usunie jeden koniec relacji, powinien również usunąć drugi koniec, ale ponieważ nie załadowałeś drugiego końca, nie może tego zrobić.