С EF6
у вас есть две опции:
1) Поскольку EF6
поддерживает готовые отношения многие-ко-многим, вы можете использовать эту функцию(что отмечено в комментарии vasily.sib).
Плюсы : ваши модели и код выглядят чище без лишней модели (UsersBooks
)
Минусы : это не гибкий способ.В будущем вам может понадобиться добавить дополнительные свойства в таблицу отношений.Этот подход не позволяет ему
2) Обрабатывать отношение «многие ко многим» с двумя реалиями «один ко многим» (как вы это сделали)
Плюсы : вы можете добавить любые дополнительные свойства к этому отношению.Это гибкий подход
Минусы : ваш код всегда должен работать с еще одной моделью (UsersBooks
)
Итак, если вы обрабатываете достаточно простой сценарий, тоВы можете пойти с первым подходом.В противном случае вам нужно учитывать второе.
Кстати, в настоящее время EF core
не поддерживает отношение «многие ко многим»