Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
12.09.2019, 23:55
|
|||
---|---|---|---|
Сложный LINQ запрос при многоуровневой архитектуре |
|||
#18+
Привет! Решил перевести проект на многоуровневую архитектуру (WEB -> BLL -> DAL) и возникла такая проблема: Есть сущность в БД со множеством связей и при выводе списка этих сущностей нужно применить несколько фильтров в зависимости от некоторых условий, допустим, если пользователь авторизован, то применить данное условие, если не авторизован, то другое и таких условий друг за другом несколько. Когда все было в одном проекте и я работал с контекстом напрямую из контроллера, то это делалось легко, я просто наращивал IQueryable и потом выполнял запрос, а как быть в случае, когда у меня нет прямого доступа к уровню данных и это нужно сделать через репозиторий? У меня варианта 2: Делать все возможные варианты перегрузок метода. Делать метод с кучей необязательных параметров и проверять их на значения. Поделитесь опытом или статейкой =) Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.09.2019, 01:01
|
|||
---|---|---|---|
|
|||
Сложный LINQ запрос при многоуровневой архитектуре |
|||
#18+
__Pavel__, divide and conquer ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.09.2019, 08:56
|
|||
---|---|---|---|
|
|||
Сложный LINQ запрос при многоуровневой архитектуре |
|||
#18+
__Pavel__У меня варианта 2: 3) создать класс "MyFilter" и передавать его в качестве параметра. Это позволит безболезненно наращивать фильтр ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.09.2019, 09:42
|
|||
---|---|---|---|
|
|||
Сложный LINQ запрос при многоуровневой архитектуре |
|||
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.09.2019, 10:52
|
|||
---|---|---|---|
Сложный LINQ запрос при многоуровневой архитектуре |
|||
#18+
Calabonga__Pavel__, Надеюсь поможет моя реализация... Вот видео или статья Как я "люблю" эти GetList() и GetById() ... |
|||
:
Нравится:
Не нравится:
|
|||
|
13.09.2019, 11:29
|
|||
---|---|---|---|
|
|||
Сложный LINQ запрос при многоуровневой архитектуре |
|||
#18+
__Pavel__, шаблон проектирования QueryObject, или шаблон проектирования Specification или посмотреть в сторону CQRS ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=18&mobile=1&tid=1354905]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
156ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
others: | 245ms |
total: | 505ms |
0 / 0 |