Методы EntityCollection Clear () и Remove ()

Как правильно удалить все элементы коллекции объекта EF? В приведенном ниже коде DocumentItems - это коллекция связанных элементов документа для документа. Этот код работает с Clear (), но не работает с SaveChanges (), потому что связанные элементы связаны с их документом через FK, а FK является обязательным. Поэтому я думаю, что они каким-то образом остаются в воздухе без внешнего ключа после Clear ().

Могу ли я решить эту проблему с помощью цикла foreach над коллекцией, вызывающего Remove () для каждого элемента, или есть другой способ?

// remove existing document items to prepare for refreshing them
existing.DocumentItems.Clear();
// adds new Document Items
PrepareInvoice(existing, collection);
_repository.SaveChanges();
13
задан Nix 6 October 2010 в 18:01
поделиться