Pregunta

Actualmente estoy en el proceso de buscar un motor de reglas que funcione en .NET. Nuestra lógica es bastante simple, +, -, *, /, y, o, cosas básicas de orden de operaciones. Sin embargo, vamos a necesitar almacenar esta información en la base de datos y luego generar el archivo de reglas cuando se extraiga una nueva versión de la base de datos. Así que los editores de UI comunes serán inútiles para nosotros, a menos que uno de ellos tenga un editor de IU de versión web.

Por lo tanto, mi pregunta es, dado lo que he dicho, cuál será el mejor motor de reglas para nosotros en términos de configuración programática e integración con ASP.NET.

¿Fue útil?

Solución

Mi experiencia con WWF ha sido bastante mala. Es genial para desarrollar un flujo de trabajo que sabe que va a existir (como " este documento va al administrador de una persona, luego a RH, si no es válido se remite al remitente ") pero es un verdadero problema si desea una configuración dinámica . Como puede ver, tratamos de usarlo para un sistema totalmente configurable, algo que BizTalk hace realmente bien, y parece que MS no está interesada en permitir que los desarrolladores reemplacen a BizTalk de manera tan económica.

También analizamos el uso del motor y herramientas de reglas de visión que parecían ser un gran ajuste para lo que necesitábamos, aunque nunca tuvimos tiempo de eliminar WWF y reemplazarlo.

Le recomendaría encarecidamente que si sus reglas van a ser relativamente simples, ya sea que use un motor de reglas para el que tenga el código fuente o lo escriba usted mismo. Justin Etheredge tiene un two part sobre cómo realizar la validación de dominios a través de reglas personalizadas usando el patrón identificado en Diseños controlados por dominio (Evans).

He implementado un sistema similar en mi proyecto actual siguiendo las mismas pautas y serializo / deserializo las reglas de la base de datos. Tendré que echar un vistazo a Drools.NET .

Otros consejos

el hecho de que biztalk no sea reemplazado fácilmente por wwf es cierto. Los objetivos son muy diferentes entre ellos, drools se compara con biztalk y no con wwf, ambos usan el mismo alogoritmo (rete) !!

Ahora, usar drools es otra cosa, biztalk también funciona como un ESB, ¿los drools pueden hacer eso?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top