Size: a a a

2021 January 24

S

Sergey Trofimov in CODE BLOG / C#
но это уже из бизнес архитектурных приблуд
источник

МР

Макс Руднев... in CODE BLOG / C#
Надо будет прочекать
источник

МР

Макс Руднев... in CODE BLOG / C#
Шо за спецификация такая
источник

S

Sergey Trofimov in CODE BLOG / C#
идея проста
У тебя есть фильтер по цвету ColorFilter
есть фильтер , по названию например NameFilter

Дальше ты делаешь так var combo = ColorFilter + NameFilter

_context.Product.Where(x=> combo.IsSatisfied(x));
источник

S

Sergey Trofimov in CODE BLOG / C#
ну и ясно что цепочка может быть сколько угодно большой сложения различных фильтров (спецификаций)
источник

МР

Макс Руднев... in CODE BLOG / C#
Я для похожих целей делал флаги в Enum
источник

МР

Макс Руднев... in CODE BLOG / C#
Ну когда одного типа надо было чето смотреть
источник

t

this. in CODE BLOG / C#
Sergey Trofimov
идея проста
У тебя есть фильтер по цвету ColorFilter
есть фильтер , по названию например NameFilter

Дальше ты делаешь так var combo = ColorFilter + NameFilter

_context.Product.Where(x=> combo.IsSatisfied(x));
всегда интересовала целесообразность этого паттерна, можно же прямо в Where указать параметры фильтрации
источник

S

Sergey Trofimov in CODE BLOG / C#
this.
всегда интересовала целесообразность этого паттерна, можно же прямо в Where указать параметры фильтрации
да, толкьо тебе в код лезть надо
источник

S

Sergey Trofimov in CODE BLOG / C#
а если ты хочешь динамически фильтровать?
источник

P

Phantom in CODE BLOG / C#
Sergey Trofimov
идея проста
У тебя есть фильтер по цвету ColorFilter
есть фильтер , по названию например NameFilter

Дальше ты делаешь так var combo = ColorFilter + NameFilter

_context.Product.Where(x=> combo.IsSatisfied(x));
Можно в функциональном стиле это сделать
источник

S

Sergey Trofimov in CODE BLOG / C#
динамически клиент с Юай насоздавал спецификаций (выбрал фильтры) и все
источник

S

Sergey Trofimov in CODE BLOG / C#
Приведи пример как это сделать просто
источник

S

Sergey Trofimov in CODE BLOG / C#
с возможностью в любой момент расширить кол-во полей в продукте
источник

S

Sergey Trofimov in CODE BLOG / C#
и не трогая код
источник

S

Sergey Trofimov in CODE BLOG / C#
фильтрации
источник

S

Sergey Trofimov in CODE BLOG / C#
можно да, запихивать лямбды и Func
источник

t

this. in CODE BLOG / C#
Sergey Trofimov
можно да, запихивать лямбды и Func
Да
источник

S

Sergey Trofimov in CODE BLOG / C#
но проще ж ООП подход )
источник

t

this. in CODE BLOG / C#
Не ооп, да?)))
источник