Вот мой сценарий (таблицы):
Departments
====================
Id (int)
Name (varchar)
Employees
====================
Id (int)
Name (varchar)
EmployeesDepartmentXREFs
====================
EmployeeId (int)
DepartmentId (int)
Когда я импортирую эти 3 таблицы в модель EDMX, я получаю 2 объекта: Сотрудник и Отдел. У сущности Employee есть навигационное свойство Департаменты и у сущности Department есть навигационное свойство Employees.
И это все хорошо. Мне действительно так нравится.
Но проблема начинается, когда я хочу добавить больше полей в таблицу XREF, например, я хотел бы иметь поля DateCreated, UserId для записи, когда вносятся изменения и кем. Если я добавлю эти два поля в таблицу XREF, то моя модель EDMX покажет 3 объекта вместо двух. Это не большая проблема, но так как я уже закончил с кодированием, я как бы ищу простое решение (чтобы избежать кодирования).
Вопрос: Можно ли добавить новые поля в таблицу XREF (перекрестные ссылки) и сохранить только две сущности? Если да, как мне обновить информацию о дате и времени использования?
Я предполагаю, что сущность XREF должна присутствовать, чтобы иметь возможность обновлять ее (с датой и идентификатором пользователя), но мне действительно нравятся навигационные свойства: Отделы и Сотрудники вместо навигационных свойств EmployeesDepartmentXREFs .
Есть ли что-то среднее для этого? Какова лучшая практика?
Спасибо.