Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM Новый топик    Ответить
Топик располагается на нескольких страницах: 1 2      [все]
 EF: добавить постоянное условия в запрос  [new]
yabs
Member

Откуда: 86-78-MEK-L-TR-WI-N
Сообщений: 1347
Здравствуйте.

Используется EF 6 Code First на Оракле

есть таблицы Person и Address
в Address есть поле IsActive

хотелось бы сконфигурировать DbContext так, чтобы при любой выборке из таблицы Address проверялось IsActive == true
причем при обращении и из Person.Address и из DbContext.Address

такое возможно?
25 май 18, 10:36    [21439214]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 34638
yabs,
Обсуждалось. Поиск.
Если поле не учавствует в БЛ, то поле или запись нужно удалять.
Без галки УдалилиПонарошку.
25 май 18, 10:52    [21439311]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
buser
Member

Откуда: Санкт-Петербург
Сообщений: 4277
Petro123
yabs,
Обсуждалось. Поиск.
Если поле не учавствует в БЛ, то поле или запись нужно удалять.
Без галки УдалилиПонарошку.

Это не удаление монами...
25 май 18, 11:09    [21439410]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
buser
Member

Откуда: Санкт-Петербург
Сообщений: 4277
yabs, Global Query Filters
25 май 18, 11:10    [21439414]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 34638
buser
Petro123
yabs,
Обсуждалось. Поиск.
Если поле не учавствует в БЛ, то поле или запись нужно удалять.
Без галки УдалилиПонарошку.

Это не удаление монами...

Я тебя не понял.
Чел пишет что ВСЕГДА фильтровать.
25 май 18, 11:13    [21439423]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
buser
Member

Откуда: Санкт-Петербург
Сообщений: 4277
Petro123, вот у тебя есть список адресов по которым ты бомжуешь, но летом, как правило, ты кочуешь в крым (там тепло, там яблоки)... потом возвращаешься в еще один из адресов... они все как бо твои, но актуальный только один на протяжении какого-то периода... человеку влом протаскивать в каждый запрос руками фильтрацию по твоей текущей (изактив) локации...
25 май 18, 11:17    [21439437]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 34638
buser
yabs, Global Query Filters

Пусть делает.
Я бы не...
автор
Глобальные фильтры запросов имеют следующие ограничения:

Фильтры не могут содержать ссылки на свойства навигации.
Фильтры могут быть определены только для корневого типа сущности иерархии наследования.
25 май 18, 11:17    [21439440]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 34638
buser
но актуальный только один на протяжении какого-то периода...
это в модель надо ставить. Тогда вроде нет проблем.
Imho.
25 май 18, 11:19    [21439450]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 34638
buser
человеку влом протаскивать
я говорил если бизнесу не надо хранить адреса, то их стирать.
Либо в архив.
И протаскивать не надо.
25 май 18, 11:22    [21439473]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
yabs
Member

Откуда: 86-78-MEK-L-TR-WI-N
Сообщений: 1347
Petro123
buser
пропущено...

Это не удаление монами...

Я тебя не понял.
Чел пишет что ВСЕГДА фильтровать.

фильтровать всегда
кроме тех, кто сам знает SQL ))

сорри, но удалять навсегда не приветствуется.
заводить для этого архивную таблицу тоже никто не хочет.
25 май 18, 11:47    [21439619]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
yabs
Member

Откуда: 86-78-MEK-L-TR-WI-N
Сообщений: 1347
buser
yabs, Global Query Filters


то, что надо. спасибо. но на 6ой версии оно не поддерживается
25 май 18, 11:48    [21439622]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 34638
yabs
сорри, но удалять навсегда не приветствуется.
заводить для этого архивную таблицу тоже никто не хочет.
бывает и дату в строковом виде просят хранить.
Все бывает)
Удачи!
25 май 18, 12:13    [21439715]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Агнец за бортом
Member

Откуда:
Сообщений: 920
yabs
buser
yabs, Global Query Filters


то, что надо. спасибо. но на 6ой версии оно не поддерживается


Паттерн - репозиторий. Доп. логика над EF.
29 май 18, 19:02    [21451573]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 34638
Агнец за бортом
yabs
пропущено...


то, что надо. спасибо. но на 6ой версии оно не поддерживается


Паттерн - репозиторий. Доп. логика над EF.

Есть в сети мнение))) что данный паттерн уже есть в EF.
Поэтому согласен, если просто - "Доп. Логика над EF".
29 май 18, 19:43    [21451643]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Shocker.Pro
Member

Откуда: ->|<- :адуктО
Сообщений: 19114
Ты же имеешь цепочки Декораторов, почему бы не иметь цепочку Репозиториев
29 май 18, 19:58    [21451667]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 34638
Shocker.Pro
Ты же имеешь цепочки Декораторов, почему бы не иметь цепочку Репозиториев

Вопрос кому?
Если мне, то ответ - оверхед.
ТЗ же неизвестно).
Думаю что ТС поговорил с постановщиком и вразумил).
29 май 18, 20:07    [21451685]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Shocker.Pro
Member

Откуда: ->|<- :адуктО
Сообщений: 19114
тебе-тебе - ты же сопротивляешься

Если я сделал репозиторий для своего приложения, отвечающий требованиям к репозиторию, почему я не могу называть его репозиторием, если внутри он будет использовать EF для собственных нужд?
29 май 18, 20:11    [21451697]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 34638
Shocker.Pro,
Ну я же ответил.
Затраты будут несопоставимы с профитом.
Это прогноз.
....
Затраты вы не покажете.
А профит... Надо поискать матерные слова hVostt на саму эту идею))).
29 май 18, 20:21    [21451731]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 34638
Shocker.Pro,
Эту идею 3 раза за пол года обсуждали.
Он проснулся?
29 май 18, 20:24    [21451744]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
ViPRos
Member

Откуда:
Сообщений: 9160
Petro123,

хреново значит обсуждали
29 май 18, 20:44    [21451791]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 34638
ViPRos
Petro123,
хреново значит обсуждали

эта мысль очень важна \ нужна для топика.
Вы уже добавли в ВИПРОС EF?
29 май 18, 21:18    [21451837]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 25522
Shocker.Pro
Ты же имеешь цепочки Декораторов, почему бы не иметь цепочку Репозиториев

Декоратор над репозиторием и есть репозиторий, так как реализует тот же интерфейс
30 май 18, 06:39    [21452290]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 25522
yabs
Здравствуйте.

Используется EF 6 Code First на Оракле

есть таблицы Person и Address
в Address есть поле IsActive

хотелось бы сконфигурировать DbContext так, чтобы при любой выборке из таблицы Address проверялось IsActive == true
причем при обращении и из Person.Address и из DbContext.Address

такое возможно?

Если прям при любой выборке, то такой вариант: делаем соответсвующее представление (view) в БД, а прямой запрос из таблицы запрещаем.
30 май 18, 07:07    [21452306]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 25522
yabs
buser
yabs, Global Query Filters


то, что надо. спасибо. но на 6ой версии оно не поддерживается

Всё есть в 6-й версии, давеча фильтровали по владельцу: 21449046
30 май 18, 07:09    [21452309]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Агнец за бортом
Member

Откуда:
Сообщений: 920
skyANA
Если прям при любой выборке, то такой вариант: делаем соответсвующее представление (view) в БД, а прямой запрос из таблицы запрещаем.


Еще и в БД лезть - класс.

Выстави наружу только репозиторий, основной метод будет выглядеть как:

bool isActive = true;

repo.getObjects<T>();

repo.getObjects<T>(isActive);


Реализация:

 IQueryable<T> getObjs<T>(bool isActive = true) where T : isActiveBaseClass
        {
            return this.Set<T>().Where(x => x.isActive == isActive);
        }


Все свои сущности унаследуй от базового класса с isActive;
30 май 18, 10:56    [21452807]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 25522
Агнец за бортом,

требуется проверять IsActive в том числе и
yabs
при обращении из Person.Address
30 май 18, 15:19    [21454309]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 25522
Агнец за бортом
Все свои сущности унаследуй от базового класса с isActive

Дык выше давал ссылку:
https://blogs.msdn.microsoft.com/mvpawardprogram/2016/02/09/row-level-security-in-entityframework-6-ef6/
30 май 18, 15:21    [21454316]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
hVostt
Member

Откуда:
Сообщений: 14744
skyANA,

Так глядишь, скоро в EF будешь шарить получше многих, даже без опыта использования
30 май 18, 15:29    [21454361]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 25522
hVostt,

верно, если за других искать и читать, то и шарить за них тоже будешь
30 май 18, 15:39    [21454416]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Агнец за бортом
Member

Откуда:
Сообщений: 920
skyANA
Агнец за бортом,

требуется проверять IsActive в том числе и
yabs
при обращении из Person.Address


Стрёмный кейс, автор сам не знает, чего хочет.
30 май 18, 17:08    [21454793]     Ответить | Цитировать Сообщить модератору
 Re: EF: добавить постоянное условия в запрос  [new]
Shocker.Pro
Member

Откуда: ->|<- :адуктО
Сообщений: 19114
skyANA
верно, если за других искать и читать, то и шарить за них тоже будешь


К сообщению приложен файл. Размер - 26Kb
30 май 18, 18:27    [21455149]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: 1 2      [все]
Все форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM Ответить