Я использую Entity Framework с SQL Server. У меня есть много ко многим отношениям между 2 таблицами. Я создал таблицу соединений только с полями первичного ключа из двух таблиц. В конструкторе две таблицы теперь имеют свойство навигации для другой с типами возвращаемых значений Collection of X, где X - другая сущность. Пока что все так, как и должно быть. Настройка выглядит правильно.
Task TaskProducts Product
========== ============ =======
TaskID TaskID ProductID
Description ProductID Name
Не каждая задача будет иметь продукт или продукты, связанные с ним. Что я назначаю свойству навигации «Продукты» в таблице «Задачи», если для этой Задачи нет связанного продукта?
Создать ли коллекцию EntityCollection с сущностями Product и назначить ее свойству навигации Products в сущности Task, когда у меня есть сущности Product?
При обновлении (добавлении, удалении и изменении) свойства навигации «Продукты» в объекте «Задача» я работаю с ним, как с любой другой коллекцией? Есть ли какие-то особые вещи, на которые стоит обратить внимание?
Мне будет интересна любая помощь в работе со многими отношениями в Entity Framework.
Edit (11/17/2009)
Одна вещь, которую я узнал, заключается в том, что при работе со связями «многие ко многим» с таблицей соединений ОБА поля в таблице соединений должны быть отмечены как первичные ключи;