Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 45361|Odpověď: 1

[ASP.NET] ASP.NET Filtr Core(4) sjednocený validace modelů ModelState

[Kopírovat odkaz]
Zveřejněno 13. 3. 2021 20:48:05 | | | |
Anotace stavu modelu a dat v C# nám poskytují pohodlný způsob, jak požádat o ověření dat. ModelState modelové ověření jednoduše znamená pomoci backendu ušetřit spoustu práce s ověřováním parametrů, stačí přidat odpovídající funkce do modelu a nakonec zavolat ModelState.IsValid v řadiči, abyste získali výsledky ověření. Bez ModelState by naše validace backendových parametrů mohla potřebovat napsat hodně if úsudků.

Požadavky: Posuzujeme, zda parametry POST prošly ověřením modelu ve filtru, pokud ověření neprošly, přímo vrátíme chybovou zprávu o jednotném JSON, až po úspěšném ověření, a poté zadáme řídicí metodu, výhodou je,Nemusíme soudit každý ovladač a dělat opakující se práci

Prohlédněte si validaci modelu ModelState

webapi ModelState.IsValid validace modelu
https://www.itsvse.com/thread-3809-1-1.html

Ručně ověřujte pole modelu ASP.NET MVC
https://www.itsvse.com/thread-9500-1-1.html

Asp.net Validace dat základních modelů
https://www.itsvse.com/thread-9016-1-1.html

Filtry recenzí

mvc vlastní filtr třídy ActionFilterAttribute

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

Opakujte si znalosti ASP.NET Core

ASP.NET Jádro (iii) Dynamicky vytvářet instance pomocí ActivatorUtilities
https://www.itsvse.com/thread-9488-1-1.html

ASP.NET Jádro (2) Restartovat aplikaci pomocí kódu
https://www.itsvse.com/thread-9480-1-1.html

ASP.NET Core (1) používá Redis caching
https://www.itsvse.com/thread-9393-1-1.html

Systém předdefinuje atribut ValidationAttribute
Sada validačních funkcí, které dědí z atributu ValidationAtribut, je definována v jmenném prostoru System.ComponentModel.DataAnnotations.

  • RequiredAttribute: Používá se k ověření požadovaných datových polí.
  • RangeAttribute: Používá se k ověření, zda hodnota číselného pole je v rámci stanoveného rozsahu.
  • StringLengthAttribute: Používá se k ověření, že délka řetězce cílového pole je v rámci stanoveného rozsahu.
  • MaxLengthAttribute/MinLengthAttribute: Používá se k ověření, zda délka slovníku znaků/pole je menší/větší než specifikovaná horní/dolní hranice.
  • RegularExpressionAttribute: Používá se k ověření, že formát řetězcového pole odpovídá specifikovanému regulárnímu výrazu.
  • CompareAttribute: Používá se k ověření, zda je hodnota cílového pole konzistentní s hodnotou jiného pole, a může být použita k ověření konzistence zadání hesla dvakrát v scénáři registrace uživatele.
  • CustomValidationAttribute: Specifikuje typ validace a validační metodu pro ověření cílového člena.



Samozřejmě můžeme také definovat pravidla pro validaci dědičností třídy ValidationAttribute a implementací odpovídající metody.

Podívejme se nejprve na renderování, chybová zpráva je vrácena rozhraním na pozadí, a to následovně:



Kód objektového modelu:

Kód filtru ModelStateFilter:



Kód IsAjaxRequest je následující:

Nakonec přidejte vlastní filtr do Startup souboru, kód je následující:



(Konec)




Předchozí:HtmlAgilityPack parsuje HTML tipy pro rollupy
Další:.NET Core volá Baidu PaddleOCR pro rozpoznávání obrázků a textů
Zveřejněno 2021-9-22 20:40:25 |
Uč se učit...
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com