У меня есть многоуровневое приложение N -, в котором я использую шаблон спецификации. Теперь я хочу предоставить несколько способов создания спецификаций для клиентского кода. Должно быть несколько предварительно -определенных опций, подобных этим:
Эти объекты (позволю себе назвать их Фильтры )не должны содержать никаких логических (методов ), только данные -тип и параметры фильтра. И должен быть естественный способ преобразовать их в спецификацию на сервере. Вот пример того, как это должно выглядеть со стороны клиента:
var serviceClient = new DataModuleService();
var equalFilter = new ContainsFilter<Book>("Title","Lord of the Rings");
var lordOfTheRingBooks = serviceClient.GetBooks(equalFilter);
Также должны быть типы фильтров для всех стандартных операций (, таких как Equal, Greater, In, Between, StartsWith для строки и т. д. )и способы их объединения с логическими операторами (и, или, не ).
Существуют ли какие-то шаблоны/стандартные практики для реализации такой вещи?
УПД:задача пока заморожена, и я уже начал думать, что проблема в самой постановке задачи.