Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 54363|Vastaus: 1

[Lähde] .NET/C# Rule Engine RulesEngine -opas

[Kopioi linkki]
Julkaistu 29.3.2021 13.56.10 | | | |
RulesEngine on kirjasto/NuGet-paketti, jota käytetään liiketoimintalogiikan/sääntöjen/politiikkojen abstrahoimiseen järjestelmästä. Tämä voi toimia hyvin yksinkertaisesti mahdollistamalla sääntöjen sijoittamisen tallennustilaan järjestelmän ydinlogiikan ulkopuolelle, varmistaen, ettei sääntöjen muutokset vaikuta ydinjärjestelmään.

Sovellettavat skenaariot:

  • Syöte- ja lähtötyyppien määrä on suhteellisen kiinteä, mutta suorituslogiikka muuttuu usein.
  • kytkimen ehdot muuttuvat usein ja monimutkaiset kytkinlauseet korvataan;
  • liiketoimintalogiikkaa, jossa on useita ehtoja tai sääntöjä, jotka muuttuvat;
  • Tilanteita, joissa sääntövapaus ei vaadi erityisen suuria vapauksia. (Tässä tapauksessa suositellaan skriptausmoottoria)


RulesEnginen säännöt tallennetaan JSONiin, ja säännöt (Säännöt) ilmaistaan lambda-lausekkeina.

GitHub-osoite:Hyperlinkin kirjautuminen on näkyvissä.

Asiakirjan osoite:Hyperlinkin kirjautuminen on näkyvissä.(Itse koen, että dokumentaatio on hieman epämääräistä, ja osa käytöstä ei ole selvästi selitetty)

Luo ensin uusi .NET Core 3.1 -konsoliprojekti ja käytä nuget-komentoa paketin asentamiseen seuraavasti:

Luo uusi sääntötiedosto :Rules.json aseta kopioimaan tulostiedostoon.

Konfiguraatio on seuraava:

Kokeile suorittaa ohjelma ja tulos on seuraava:



CustomTest-työnkulku kutsuu C#-funktiota sääntöjen validointiin, huomaa, että RulesEngine-objektin käyttöönoton yhteydessä meidän täytyy lisätä ReSettings, jotta C#-metodi suoritetaan normaalisti.

Niiden joukossa,Validointijoukot ovat abstraktempia ymmärtää, käyttää localParams, paikallisen muuttujan avainsana on localParams, joka voidaan yksinkertaisesti ymmärtää var-nimi = lauseke

Koko koodi on seuraava:

Lähdekoodin lataus:

Turistit, jos haluatte nähdä tämän postauksen piilotetun sisällön, olkaa hyväVastaus






Edellinen:.NET Core -vesileimausongelmat Linux-kuvissa
Seuraava:.NET asettaa oletus-SDK-version
 Vuokraisäntä| Julkaistu 30.8.2023 18.51.41 |
Sääntömoottorieditori:Hyperlinkin kirjautuminen on näkyvissä.
Rule Engine Editorin verkkodemo:Hyperlinkin kirjautuminen on näkyvissä.

Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com