По умолчанию в EF это соединение таблица не будет отображаться как единое целое, а не вы получите многие ко многим отношений, которые будут отображаться в виде двух навигационных свойств
т.е.
Person.Stores
Store.People
Если вы хотите построить много-много отношений без извлечения сущностей, а затем привязать объекты-заглушки - лучший способ.
var person = // you already have the person
var store = new Store{StoreID = 5} // you know the storeID
ctx.AttachTo("Stores", store);
ctx.AttachTo("People", person); // assuming the person isn't already attached
person.Stores.Add(store);
ctx.SaveChanges();
Единственная проблема с этим кодом он потерпит неудачу, если отношения уже существует, так что вы должны быть уверены, что вы создаете новых отношения
Для дополнительной информации об использовании Сто объектов, как этот чек out my post. Надеюсь, это поможет.
Alex
Редактировать от OP:
Поскольку я использую EF4, я использовал следующий код, чтобы удалить строку из прикрепления (благодаря кончиков 13 из ссылки).
var person = // you already have the person
var store = new Store{StoreID = 5} // you know the storeID
ctx.Stores.Attach(store);
person.Stores.Add(store);
ctx.SaveChanges();
Вы спасаете жизнь! Прикрепить и соответствующий Удалить; блестящий! –
это замечательно. Спасибо, что поделился!! –