Есть модель, в которой два объекта
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 были удалены?
Здравствуйте, detox, Вы писали:
D>Есть модель, в которой два объекта
D>Order и Report. Order может содержать Reports.
D>
D>Добавляем Order в модель:
D>D> Order order = new Order()
D> {
D> Name = "Test"
D> };
D> Report report = new Report()
D> {
D> Name = "Test"
D> };
D> order.Reports.Add(report);
D> context.Orders.AddObject(order);
D> var insertEntry = context.ObjectStateManager.GetObjectStateEntries(System.Data.EntityState.Added);
D>
D>Все отлично. Имеем два добавленных объекта.
D>Пытаемся удалить объект Order из модели
D>D> var order = context.Orders.FirstOrDefault();
D> context.DeleteObject(order);
D> var deleteEntry = context.ObjectStateManager.GetObjectStateEntries(System.Data.EntityState.Deleted);
D>
D>Имеем один удаленный объект, а не два.
D>Как отследить какие Report были удалены?
а в БД выставлено каскадное удаление? если нет, то стоило бы включить