Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 45361|Atsakyti: 1

[ASP.NET] ASP.NET Core(4) filtro vieningas ModelState modelio tikrinimas

[Kopijuoti nuorodą]
Publikuota: 2021-3-13 20:48:05 | | | |
Modelio būsenos ir duomenų anotacijos C# suteikia mums patogų būdą prašyti duomenų patvirtinimo. "ModelState" modelio patvirtinimas tiesiog reiškia padėti vidinei sistemai sutaupyti daug parametrų tikrinimo darbo, tiesiog pridėkite atitinkamas modelio funkcijas ir galiausiai paskambinkite ModelState.IsValid valdiklyje, kad gautumėte patikrinimo rezultatus. Be "ModelState" mūsų galinių parametrų patvirtinimui gali tekti parašyti daug if sprendimų.

Reikalavimai: Mes sprendžiame, ar POST parametrai išlaikė modelio patikrinimą filtre, jei jie neišlaiko patikrinimo, tiesiogiai grąžinkite vieningą json klaidos pranešimą, tik po to, kai patikrinimas praeina, ir tada įveskite valdiklio metodą, to pranašumas yra,Mums nereikia teisti kiekvieno valdiklio ir atlikti pasikartojančių darbų

Modelio "ModelState" tikrinimo peržiūra

webapi ModelState.IsValid modelio tikrinimas
https://www.itsvse.com/thread-3809-1-1.html

Modelio laukų tikrinimas rankiniu būdu ASP.NET MVC
https://www.itsvse.com/thread-9500-1-1.html

Asp.net Pagrindinio modelio duomenų patvirtinimas
https://www.itsvse.com/thread-9016-1-1.html

Peržiūrėti filtrus

mvc pasirinktinis filtras ActionFilterAttribute klasė

https://www.itsvse.com/thread-2609-1-1.html

Peržiūrėkite savo žinias apie "ASP.NET Core"

ASP.NET Core (iii) Dinamiškai kurkite egzempliorius naudodami "ActivatorUtilities"
https://www.itsvse.com/thread-9488-1-1.html

ASP.NET Core (2) Iš naujo paleiskite programą pagal kodą
https://www.itsvse.com/thread-9480-1-1.html

ASP.NET Core (1) naudoja Redis talpyklą
https://www.itsvse.com/thread-9393-1-1.html

Sistema iš anksto apibrėžia ValidationAttribute
Tikrinimo funkcijų rinkinys, paveldėtas iš ValidationAttribute, apibrėžiamas vardų srityje System.ComponentModel.DataAnnotations.

  • RequiredAttribute: naudojamas būtiniems duomenų laukams tikrinti.
  • RangeAttribute: naudojamas patikrinti, ar skaitinio lauko reikšmė patenka į nurodytą diapazoną.
  • StringLengthAttribute: naudojamas patikrinti, ar paskirties lauko eilutės ilgis patenka į nurodytą diapazoną.
  • MaxLengthAttribute/MinLengthAttribute: naudojamas patikrinti, ar simbolių / masyvo žodyno ilgis yra mažesnis / didesnis už nurodytą viršutinę / apatinę ribą.
  • RegularExpressionAttribute: naudojamas patikrinti, ar eilutės lauko formatas atitinka nurodytą reguliariąją išraišką.
  • CompareAttribute: naudojamas patikrinti, ar paskirties lauko reikšmė atitinka kito lauko reikšmę, ir gali būti naudojamas patvirtinti slaptažodžio įvedimo nuoseklumą du kartus vartotojo registracijos scenarijuje.
  • CustomValidationAttribute: nurodo tikrinimo tipą ir tikrinimo metodą, skirtą tiksliniam nariui tikrinti.



Žinoma, mes taip pat galime apibrėžti patvirtinimo taisykles paveldėdami ValidationAttribute klasę ir įgyvendindami atitinkamą metodą.

Pirmiausia pažvelkime į atvaizdus, klaidos pranešimą pateikia fono sąsaja taip:



Objekto modelio kodas:

ModelStateFilter filtro kodas:



IsAjaxRequest kodas yra toks:

Galiausiai pridėkite pasirinktinį filtrą prie paleisties failo, kodas yra toks:



(Pabaiga)




Ankstesnis:"HtmlAgilityPack" analizuoja HTML patarimus, skirtus apibendrinimams
Kitą:.NET Core kviečia Baidu PaddleOCR atpažinti vaizdus ir tekstus
Paskelbta 2021-9-22 20:40:25 |
Išmokite mokytis...
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com