Как мне удалить связанные объекты в entity Framework

#entity-framework #entity-framework-5

#entity-framework #entity-framework-5

Вопрос:

Я пытаюсь удалить связанные объекты с основным объектом в EF6

GroupageJob и GroupageAddresses имеют отношения fk с одним groupagejob со многими groupageaddresses Вот код, который я написал

      var gaddrs= groupagejob.GroupageAddresses.Where(i=>i.TransportJobId==2);
               foreach (var gaddr in gaddrs)
               {
                  // db.GroupageAddresses.Remove(gaddr);
                   db.Entry(gaddr).State = EntityState.Deleted;
               }
         groupagejob.Status = TransportJobStatus.Delivered.ToString();           
         db.Entry(groupagejob).State = EntityState.Modified;
         var effroes = db.SaveChanges();
  

Я получаю сообщение об ошибке, что
добавление связи с объектом, который находится в удаленном состоянии, не разрешено

Комментарии:

1. Можете ли вы расширить взаимосвязь между ними и чего вы пытаетесь достичь здесь?

2. GroupageJob и GroupageAddresses имеют отношения fk с одним groupagejob со многими groupageaddresses

3. ИТАК, еще немного кода: где вы создаете экземпляр контекста? Почему бы вам не использовать непосредственно Delete метод для получения подробной информации и не позволить отслеживанию изменений обнаруживать модификацию основного объекта? Вы делаете это сложным способом

4. У меня есть контекст в basecontroller (mvc) и я использовал общий унаследованный контроллер во всех производных контроллерах

5. @JotaBe можете ли вы сообщить мне, как написать приведенный выше код по-вашему