Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 54363|Svare: 1

[Kilde] .NET/C# Rule Engine RulesEngine-veiledning

[Kopier lenke]
Publisert på 29.03.2021 13:56:10 | | | |
RulesEngine er et bibliotek/NuGet-pakke som brukes til å abstrahere forretningslogikk/regler/policyer fra systemet. Dette kan fungere på en veldig enkel måte ved å la deg plassere regler i lagring utenfor systemets kjernelogikk, slik at endringer i reglene ikke påvirker kjernesystemet.

Relevante scenarier:

  • Antallet inn- og utdatatyper er relativt fast, men utførelseslogikken endres ofte.
  • Switch-forholdene endres ofte, og komplekse switch-setninger blir erstattet;
  • forretningslogikk med flere betingelser eller regler som vil endres;
  • Situasjoner hvor regelfrihet ikke krever spesielt høye frihetsgrader. (I dette tilfellet anbefales en skriptmotor)


Reglene i RulesEngine lagres i JSON, og reglene (reglene) uttrykkes i lambda-uttrykk.

GitHub-adresse:Innloggingen med hyperkoblingen er synlig.

Dokumentadresse:Innloggingen med hyperkoblingen er synlig.(Personlig synes jeg dokumentasjonen er litt vag, og noe av bruken forklares ikke så tydelig)

Først oppretter du et nytt .NET Core 3.1-konsollprosjekt og bruker nuget-kommandoen for å installere pakken, som følger:

Opprett en ny regelfil :Rules.json satt til å kopieres til utdatakatalogen.

Konfigurasjonen er som følger:

Prøv å kjøre programmet, og resultatet er som følger:



CustomTest-arbeidsflyten vil kalle vår C#-funksjon for å validere reglene, merk at når vi instansierer RulesEngine-objektet, må vi legge til ReSettings for å kjøre C#-metoden normalt.

Blant dem,Valideringssett er mer abstrakte å forstå, vil bruke localParams, nøkkelordet til den lokale variabelen er localParams, som enkelt kan forstås som var-navn = uttrykk

Den fullstendige koden er som følger:

Nedlasting av kildekode:

Turister, hvis dere vil se det skjulte innholdet i dette innlegget, vær så snillSvare






Foregående:.NET Core-vannmerkingsproblemer på Linux-bilder
Neste:.NET setter standard SDK-versjon
 Vert| Publisert på 30.08.2023 18:51:41 |
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com