Реализация репозитория Pattern с EF реляционными таблицами - PullRequest
0 голосов
/ 05 октября 2018

У меня есть 4 таблицы Student, Result, ResultDetail и Queue

Result и ResultDetails связаны с ResultID как ForeignKey.Student и Result связаны с StudentID, поскольку ForeignKey
и Student могут иметь число результатов N, но будет иметь только один активный Result.Queue и Student связаны с StudentID.

Теперь, используя Entity Framework и Repository Pattern, я хочу выполнить ->

Queue q join Student  s on q.StudentID = s.StudentID
join Result r on q.StudentId = r.StudentID
Join ResultDetail  rd on t.ResultID = rd.ResultId where r.IsActive = 1

Может кто-нибудь помочь в достижении этого с помощью Repository Pattern?Нужно ли нам создавать 4 репозитория, хотя у нас есть отношения между таблицами.Производительность также является критерием.

Заранее спасибо.

1 Ответ

0 голосов
/ 05 октября 2018

Может ли кто-нибудь помочь в достижении этого с помощью шаблона репозитория?

Да.Создайте пользовательский подтип DbContext, который будет служить вашим хранилищем.Добавьте свойство DbSet для каждого из ваших типов сущностей.Также добавьте свойства навигации в ваши сущности, чтобы ваш запрос не использовал join в LINQ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...