Tengo una aplicación en capas N, donde utilizo el patrón de especificación. Ahora, quiero proporcionar algunas formas de construir especificaciones para el código del cliente. Debe haber varias opciones predefinidas, como estos:práctica estándar para exponer el patrón de especificación al código del cliente?
- Igualdad
- MayorQue
- Contiene
Estos objetos (déjame llamar a los filtros) no debe contener ninguna lógica (métodos), solo datos - tipo de filtro y parámetros. Y debe haber una forma natural de transformarlos en especificaciones en el servidor. Aquí es ejemplo de cómo debe mirar desde el lado del cliente:
var serviceClient = new DataModuleService();
var equalFilter = new ContainsFilter<Book>("Title","Lord of the Rings");
var lordOfTheRingBooks = serviceClient.GetBooks(equalFilter);
También debe haber tipos de filtros para todas las operaciones estándar (como Equal, más, en, entre, StartsWith de cuerda, etc) y formas de combinar ellos con operadores booleanos (y, o, no).
¿Existen algunos patrones/prácticas estándar para implementar tal cosa?
UPD: la tarea está congelada por ahora, y he empezado a pensar que hay un problema en la definición de tarea en sí.
"Está muerto Jim." el enlace está muerto –
Gracias, parece que el sitio está caído. He agregado más enlaces – sll