Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 2.0 / 3.5 / 4.0
Popolamento gridview
mercoledì 13 febbraio 2008 - 12.14
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
squilibrium
Profilo
| Junior Member
168
messaggi | Data Invio:
mer 13 feb 2008 - 12:14
Ciao a tutti
io ho una gridview che viene popolata attraverso un objectdatasource.
A volte capita che però il database dal quale vengono recuperati i dati sia off line e quindi il popolamento va in errore.
Come è possibile gestire l'errore che si presenta in questo caso?
L'unico modo che ho trovato è quello di gestire l'evento page_error ed analizzare il Server.GetLastError() mentre vorrei intercettare l'errore mentre viene fatto il bind dei dati.
Qualche idea?
Grazie
freeteo
Profilo
| Guru
6.542
messaggi | Data Invio:
gio 14 feb 2008 - 20:27
ciao,
non ho capito come mai hai bindato un objectDataSource, e poi parli di "database"
Tipicamente quando usi un objectdatasource significa che chiami un metodo di una classe tua che ti torna una Collection Tipizzata, o cmq un DataTable/DataSet, ma il fatto è che passi per qualche metodo tuo.
Se invece vai dritto su un database (access/sql e ultimamente Linq anche se non è un db) alora puoi usare dei provider gia' pronti, che sanno cosa fare.
Percio' mi verrebbe da pensare che passando per un ObjectDataSource, ti puoi tutelare tu da codice tuo, nel metodo chiamato, a controllare la connessione, ed eventualmente tornare qualcosa di vuoto, o qualcos'altro...o cmq gestendo un redirect da qualche altra parte...insomma quello che preferisci tu.
ciao.
Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo
squilibrium
Profilo
| Junior Member
168
messaggi | Data Invio:
ven 15 feb 2008 - 08:16
Effettivamente non sono stato molto chiaro...
Ci provo ora.
La mia applicazione è sviluppata in 3 livelli.
livello dati
livello businness
livello presentation
E' un'architettura che utilizzo ormai da diverso tempo ed è piuttosto diffusa.
Quando mi si genera un eccezione sul livello dati (come per esempio l'apertura di una connessione al DB), io la sollevo fino al livello di presentation dove poi gestisco l'errore con una pagina personalizzata.
In dot.net 1.1 effettuavo sempre il databind delle griglie da codice e lo gestivo in un blocco try catch. Di conseguenza nel caso si verificasse un errore di connessione al database, veniva sollevata l'eccezione e risaliva i 3 livelli fino al suddetto blocco try catch.
Con dot.net 2.0 invece, il bind della gridview, lo effettuo tramite objectdatasource (ovvero non scrivo codice). Se però si genera un eccezione, devo poterla intercettare da codice e devo intercettarla al livello di presentation.
In sintesi dovrei poter intercettare un qualsiasi errore si verifichi quando viene effettuato il bind di una gridview.
Spero di essere stato un pò più chiaro.
freeteo
Profilo
| Guru
6.542
messaggi | Data Invio:
ven 15 feb 2008 - 17:55
>Effettivamente non sono stato molto chiaro...
>
>Ci provo ora.
>
>La mia applicazione è sviluppata in 3 livelli.
>livello dati
>livello businness
>livello presentation
>
>E' un'architettura che utilizzo ormai da diverso tempo ed è piuttosto
>diffusa.
si e salvo casi particolari direi che è anche la migliore
>In sintesi dovrei poter intercettare un qualsiasi errore si verifichi
>quando viene effettuato il bind di una gridview.
ci sono i vari eventi onDataBinding etc...pero' io penserei a fare in modo di testarlo magari sul load della pagina, invocando il select()...effettivamente è una cosa che non ho ancora approfondito, quindi non ho una soluzione vincente...
ciao.
Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo
squilibrium
Profilo
| Junior Member
168
messaggi | Data Invio:
sab 16 feb 2008 - 14:32
Sarebbe utile avere un evento della griglia del tipo OnBindError
Comunque per il momento ho "risolto" gestendo l'errore nel page_error e utilizzando la funzione Server.GetLastError()
ciao e grazie
Torna su
Stanze Forum
Elenco Threads
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 !