Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 54363|Răspunde: 1

[Sursă] .NET/C# Tutorial pentru Rules Engine

[Copiază linkul]
Postat pe 29.03.2021 13:56:10 | | | |
RulesEngine este un pachet de bibliotecă/NuGet folosit pentru a abstractiza logica de business/regulile/politicile din sistem. Acest lucru poate funcționa într-un mod foarte simplu, permițându-ți să plasezi regulile în stocare în afara logicii de bază a sistemului, asigurându-te că orice modificare a regulilor nu afectează sistemul de bază.

Scenarii aplicabile:

  • Numărul tipurilor de intrare și ieșire este relativ fix, dar logica de execuție se schimbă frecvent.
  • condițiile de comutare se schimbă frecvent, iar instrucțiunile complexe de comutare sunt înlocuite;
  • logică de business cu multiple condiții sau reguli care se vor schimba;
  • Scenarii în care libertatea de reguli nu necesită grade deosebit de ridicate de libertate. (În acest caz, este recomandat un motor de scripting)


Regulile RulesEngine sunt stocate în JSON, iar regulile (Regulile) sunt exprimate în expresii lambda.

Adresă GitHub:Autentificarea cu hyperlink este vizibilă.

Adresa documentului:Autentificarea cu hyperlink este vizibilă.(Personal, simt că documentația este puțin vagă și unele utilizări nu sunt explicate prea clar)

Mai întâi, creează un nou proiect de consolă .NET Core 3.1 și folosește comanda nuget pentru a instala pachetul, după cum urmează:

Creează un nou fișier de reguli :Rules.json setat să fie copiat în directorul de ieșire.

Configurația este următoarea:

Încearcă să rulezi programul și rezultatul este următorul:



Fluxul de lucru customTest va chema funcția noastră C# pentru a valida regulile, reține că atunci când instanțiem obiectul RulesEngine, trebuie să adăugăm ReSettings pentru a executa metoda noastră C# normal.

Dintre ei,Mulțimile de validare sunt mai abstracte de înțeles, va folosi localParams, cuvântul cheie al variabilei locale este localParams, care poate fi înțeles simplu ca var name = expresie

Codul complet este următorul:

Descărcare cod sursă:

Turiști, dacă vreți să vedeți conținutul ascuns al acestei postări, vă rogRăspunde






Precedent:Probleme cu watermarking-ul .NET Core pe imaginile Linux
Următor:.NET setează versiunea implicită a SDK-ului
 Proprietarul| Postat pe 30.08.2023 18:51:41 |
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com