Боже мой, EF так расстраивает. Кажется, я не могу понять, что мне нужно, чтобы я мог удалить объект. Кажется, я могу удалить объект, но не связанные дочерние объекты. Может кто-нибудь сказать мне, что такое правило, когда вы хотите удалить все связанные дочерние объекты данного объекта?
Я пытался загрузить все связанные объекты, как это:
Entry entry = ModelContext.GetObjectByKey(new EntityKey("ModelContainer.EntrySet", "Id", id)) as Entry;
entry.ChildEnteries.Load();
if (entry != null)
{
ModelContext.DeleteObject(entry);
ModelContext.SaveChanges();
}
Я получаю ошибки, связанные с отношениями: A relationship is being added or deleted from an AssociationSet 'EntryEntry'. With cardinality constraints, a corresponding 'Entry1' must also be added or deleted.
Почему я не могу просто загрузить объект с помощью modelcontext.GetObjectByKey
и удалить его вместе с дочерними объектами?
Мой другой вопрос: могу ли я удалить объект, используя команду Entity, вот так?
DELETE e from objectset as e where e.id = 12
Я пробовал несколько вариантов, и все они выдают исключения.