Per evitare che un errore nelle query associate ad un SqlDataSource (ma il concetto può essere tranquillamente riportato anche per altri DataSource control), bloccando la visualizzazione della pagina in luogo di un messaggio di errore, si può optare per l'inserimento di una routine che intercetti l'evento l'evento Selected (per la query di selezione), Inserted (inserimento), Updated (aggiornamento) e Deleted (cancellazione), in questo modo:
void source_Selected(object sender, ObjectDataSourceStatusEventArgs e) { if (e.Exception != null) { // il messaggio è e.Exception.InnerException.Message; ErrorMessage.Text = "Errore: " + e.Exception.InnerException.Message; // intercetto, così blocco la propagazione dell'errore e.ExceptionHandled = true; // non viene scatenato un errore dal controllo } }
Per maggiori informazioni su SqlDataSource e DataSource control si veda:
Controlli DataSource in ASP.NET 2.0
https://www.aspitalia.com/articoli/asp.net2/DataSource.aspx
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Short-circuiting della Pipeline in ASP.NET Core
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
Effettuare il deploy di immagini solo da container registry approvati in Kubernetes
Load test di ASP.NET Core con k6
Personalizzare l'errore del rate limiting middleware in ASP.NET Core
Implementare il throttling in ASP.NET Core
Effettuare il binding di date in Blazor
Supportare il sorting di dati tabellari in Blazor con QuickGrid