Gestire le eccezioni in una pagina aspx

mercoledì 13 maggio 2009 - 12.48

sanzo77 Profilo | Newbie

Salve a tutti,
volevo sapere come fare per gestire le eccezioni (in particolare le Eccezioni SQL) all'interno di una pagina aspx. Io ho un form view che inserisce dei dati in un db, vorrei poter gestire le eventuali eccezioni sql che vengono sollevate, ma non so come inserire un blocco try catch in una pagina

Jeremy Profilo | Guru

Ciao

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Facci sapere...
Ciao

sanzo77 Profilo | Newbie

Però quello lo devo mettere nel code-behind, ma la gv ha tutto embedded nella pagina, non ha nulla in code-behind.

Jeremy Profilo | Guru

Ciao.
Puoi mostrare un pò di codice??

sanzo77 Profilo | Newbie

Che codice posso mostrarti? Il codice è il classico codice di un formview:
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra
legato al datasource SqlDataBolle definito come segue:
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Da quel che ho capito ciò che succede al click sul tasto insert è definito all'interno del DS legato al formview. E' proprio qui che vorrei gestire l'eccezione, ad esempio se il DB mi solleva l'eccezione di chiave duplicata vorrei poterla catchare e gestire un redirect alla pagina di errore.

Per ora ho sopperito a questa cosa definendo nel global.asax una funzione che al verificarsi di un errore fa un parsing della stringa di errore e se trova una determinata stringa redirige sulla pagina di errore customizzato, però questo è utile se l'eccezione sollevata è parlante (ovvero dice esattamente qual'è l'errore). Se invece il messaggio è generico risulta difficile dare un messaggio chiaro all'utente.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5