Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 45361|Risposta: 1

[ASP.NET] ASP.NET Filtro Core(4) validazione unificata del modello ModelState

[Copiato link]
Pubblicato il 13-03-2021 alle 20:48:05 | | | |
Lo stato dei modelli e le annotazioni dei dati in C# ci offrono un modo comodo per richiedere la verifica dei dati. La verifica del modello ModelState significa semplicemente aiutare il backend a risparmiare molto lavoro di verifica dei parametri, basta aggiungere funzionalità corrispondenti al modello e infine chiamare ModelState.IsValid nel controller per ottenere i risultati della verifica. Senza ModelState, la validazione dei parametri backend potrebbe dover scrivere molti giudizi if.

Requisiti: Giudichiamo se i parametri di POST hanno superato la verifica del modello nel filtro; se non superano la verifica, restituiamo direttamente un messaggio di errore json unificato, solo dopo il passaggio della verifica, e poi entriamo nel metodo controller; il vantaggio di ciò è,Non dobbiamo giudicare ogni controller e fare lavori ripetitivi

Rivedi la validazione del modello ModelState

Validazione del modello webapi ModelState.IsValid
https://www.itsvse.com/thread-3809-1-1.html

Valida manualmente i campi del modello ASP.NET MVC
https://www.itsvse.com/thread-9500-1-1.html

Asp.net Validazione dei Dati del Modello Core
https://www.itsvse.com/thread-9016-1-1.html

Filtri per recensioni

mvc custom filter ActionFilterAttribute class

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

Rivedi la tua conoscenza di ASP.NET Core

ASP.NET Core (iii) Creare dinamicamente istanze usando ActivatorUtilities
https://www.itsvse.com/thread-9488-1-1.html

ASP.NET Core (2) Riavvia l'applicazione tramite codice
https://www.itsvse.com/thread-9480-1-1.html

ASP.NET Core (1) utilizza la cache Redis
https://www.itsvse.com/thread-9393-1-1.html

Il sistema predefinisce l'AttributoValidazione
Un insieme di caratteristiche di validazione che ereditano dall'AttributoValidazione è definito nello spazio nominale System.ComponentModel.DataAnnotations.

  • RequiredAttribute: Utilizzato per validare i campi dati richiesti.
  • RangeAttribute: Utilizzato per verificare che il valore di un campo numerico rientri nell'intervallo specificato.
  • StringLengthAttribute: Usato per verificare che la lunghezza della stringa del campo target rientri nell'intervallo specificato.
  • MaxLengthAttribute/MinLengthAttribute: Utilizzato per verificare se la lunghezza del dizionario caratteri/array è inferiore o superiore al limite superiore/inferiore specificato.
  • RegularExpressionAttribute: Utilizzato per verificare che il formato del campo stringa corrisponda all'espressione regolare specificata.
  • CompareAttribute: Utilizzato per verificare se il valore del campo target è coerente con quello di un altro campo, e può essere usato per confermare la coerenza dell'inserimento della password due volte in uno scenario di registrazione utente.
  • CustomValidationAttribute: Specifica un tipo di validazione e un metodo di validazione per validare il membro target.



Naturalmente, possiamo anche definire le regole per la validazione ereditando la classe ValidationAttribute e implementando il metodo corrispondente.

Diamo un'occhiata prima ai rendering, il messaggio di errore viene restituito dall'interfaccia in background, come segue:



Codice del modello oggetto:

Codice filtro ModelStateFilter:



Il codice IsAjaxRequest è il seguente:

Infine, aggiungi un filtro personalizzato al file di avvio, il codice è il seguente:



(Fine)




Precedente:HtmlAgilityPack analizza i consigli HTML per i rollup
Prossimo:.NET Core chiama Baidu PaddleOCR per riconoscere immagini e testi
Pubblicato il 2021-9-22 20:40:25 |
Impara a imparare...
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com