Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 54363|Respuesta: 1

[Fuente] Tutorial del Rules Engine del motor de reglas .NET/C#

[Copiar enlace]
Publicado en 29/3/2021 13:56:10 | | | |
RulesEngine es un paquete de biblioteca/NuGet utilizado para abstraer la lógica de negocio/reglas/políticas del sistema. Esto puede funcionar de forma muy sencilla al permitirte colocar las reglas en almacenamiento fuera de la lógica central del sistema, asegurando que cualquier cambio en las reglas no afecte al sistema central.

Escenarios aplicables:

  • El número de tipos de entrada y salida es relativamente fijo, pero la lógica de ejecución cambia con frecuencia.
  • las condiciones de conmutación cambian con frecuencia y se sustituyen las sentencias complejas de conmutación;
  • lógica de negocio con múltiples condiciones o reglas que cambiarán;
  • Escenarios en los que la libertad de reglas no requiere grados particularmente altos de libertad. (En este caso, se recomienda un motor de scripting)


Las reglas de RulesEngine se almacenan en JSON, y las reglas (Reglas) se expresan en expresiones lambda.

Dirección de GitHub:El inicio de sesión del hipervínculo es visible.

Dirección del documento:El inicio de sesión del hipervínculo es visible.(Personalmente, creo que la documentación es un poco vaga y algunos usos no se explican con mucha claridad)

Primero, crea un nuevo proyecto de consola .NET Core 3.1 y utiliza el comando nuget para instalar el paquete, de la siguiente manera:

Crea un nuevo archivo de reglas :Rules.json configura para copiar al directorio de salida.

La configuración es la siguiente:

Prueba a ejecutar el programa y la salida es la siguiente:



El flujo de trabajo customTest llamará a nuestra función C# para validar las reglas; ten en cuenta que al instanciar el objeto RulesEngine, necesitamos añadir ReSettings para ejecutar nuestro método C# con normalidad.

Entre ellos,Los conjuntos de validación son más abstractos de entender, usará localParams, la palabra clave de la variable local es localParams, que puede entenderse simplemente como var name = expresión

El código completo es el siguiente:

Descarga del código fuente:

Turistas, si queréis ver el contenido oculto de esta publicación, por favorRespuesta






Anterior:Problemas con la marca de agua de .NET Core en imágenes de Linux
Próximo:.NET establece la versión predeterminada del SDK
 Propietario| Publicado en 30/8/2023 18:51:41 |
Editor del motor de reglas:El inicio de sesión del hipervínculo es visible.
Demo online del editor de Rule Engine:El inicio de sesión del hipervínculo es visible.

Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com