Допустим, у меня есть таблица компании, таблица отдела, таблица диспетчера и таблица Employee. Между таблицами списков есть отношения от одного до многих. Таким образом, таблица Employee имеет внешний ключ ManagerID, таблицу Manager - ключ DepartmentID и т. Д.Можно ли удалить привязанные навигационные свойства в Entity Framework
Я использовал конструктор EF для создания DbContext и других классов. Я добавил ассоциации между таблицами с внешними ключами в дизайнере. Проблема в том, что я не могу установить связь между таблицей Employee и таблицами Департамента или Компании в дизайнере.
Я попытался создать отдельный частичный класс для Работника со следующим свойством отдела:
public Department Department {
get { return this.Manager.Department; }
}
Однако, когда я запускаю программу, я получаю следующее исключение:
Указанный член типа " Менеджер 'не поддерживается в LINQ для сущностей. Поддерживаются только инициализаторы, сущности и свойства навигации сущности.
Я часто запрашиваю таблицу Employee, а затем хочу отобразить информацию о компании и отделе с сотрудником. Таким образом, существует много строк с Employee.Manager.Department.Company.Field
, что делает его искаженным.
Лучше ли добавить CompanyID в таблицу Менеджера, а идентификатор CompanyID и DepartmentID в таблицу Employee или это повлияет на нормализацию базы данных? Какие парадигмы описывают эти проблемы?
Мысли, мнения приветствуются
Я попытался добавить setter 'set {Order.Event = значение;}', но я все равно получаю ту же ошибку. –
вы не будете добавлять сеттер, сначала заставьте свою модель работать, а затем, чтобы ваш код был прав – TakeMeAsAGuest