Я использую Entity Framework для создания нового заказа. Заказ содержит коллекцию контактов, отношения многие ко многим. Я хочу добавить ссылку на существующий контакт в заказ на создание заказа. Как заказать, так и связаться с объектами сущности.
Order order = new Order();
//set details on order
Contact contact = new Contact();
EntityKey contactKey =
new EntityKey("OrderDetails.Contact",
"contact_id", contact.Key.Id);
contact.EntityKey = contactKey;
contact.contact_id = contact.Key.Id;
order.Contact.Attach(contact); // throws an exception!
OrderDetails ordTable = new OrderDetails();
ordTable.AddToOrder(order);
int result = orgTable.SaveChanges();
Когда я иду присоединиться, выдается это исключение:
"Присоединение не является допустимой операцией, когда исходный объект, связанный с этим связанным концом, находится в добавленном, удаленном или отсоединенном состоянии. Объекты, загруженные с использованием параметра объединения NoTracking, всегда отсоединяются."
Я знаю, что, вероятно, пропускаю шаг или не до конца понимаю, как структура сущностей обрабатывает отношения «многие ко многим».