Nel precedente script #1015 abbiamo visto come ASP.NET MVC 2 contenga un supporto per validare i dati inseriti dall'utente tramite un sistema basato sulle DataAnnotation. Per migliorare la user experience, è possibile effettuare questa verifica anche sul client, a patto di aggiungere alla master page i riferimenti ai file Javascript seguenti (già inclusi nel template di default di Visual Studio):
<script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script> <script src="../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script> <script src="../../Scripts/MicrosoftMvcValidation.js" type="text/javascript"></script>
A questo punto all'interno di una View è sufficiente invocare il metodo EnableClientValidation per far sì che il framework inietti automaticamente l'opportuno codice Javascript in base alle DataAnnotation delle entity:
<% Html.EnableClientValidation(); %> <% using (Html.BeginForm()) {%> ...
Bisogna prestare attenzione al fatto, però, che tale tipologia di validazione non è sostitutiva di quella lato server, visto che non ci sono garanzie sul fatto che l'utente abbia effettivamente attivato gli script; pertanto è sempre necessario verificare anche a livello di controller la correttezza dei dati ottenuti in POST:
[HttpPost] public ActionResult Create(Person person) { if (!this.ModelState.IsValid) .... }
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Load test di ASP.NET Core con k6
Personalizzare l'errore del rate limiting middleware in ASP.NET Core
Eseguire operazioni con timeout in React
Utilizzare le Cache API di JavaScript per salvare elementi nella cache del browser
Recuperare un elemento inserito nella cache del browser tramite API JavaScript
Implementare il throttling in ASP.NET Core
Short-circuiting della Pipeline in ASP.NET Core
Generare file per il download da Blazor WebAssembly
Effettuare il deploy di immagini solo da container registry approvati in Kubernetes