Есть модель, в которой два объекта
Order и Report. Order может содержать Reports.

Добавляем Order в модель:
Order order = new Order()
{
Name = "Test"
};
Report report = new Report()
{
Name = "Test"
};
order.Reports.Add(report);
context.Orders.AddObject(order);
var insertEntry = context.ObjectStateManager.GetObjectStateEntries(System.Data.EntityState.Added);
Все отлично. Имеем два добавленных объекта.
Пытаемся удалить объект Order из модели
var order = context.Orders.FirstOrDefault();
context.DeleteObject(order);
var deleteEntry = context.ObjectStateManager.GetObjectStateEntries(System.Data.EntityState.Deleted);
Имеем один удаленный объект, а не два.
Как отследить какие Report были удалены?