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
Web Services, XML
TRASFERIRE UN DATATABLE CON UN WEBSERVICE
giovedì 06 settembre 2007 - 14.43
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
deganolu
Profilo
| Newbie
40
messaggi | Data Invio:
gio 6 set 2007 - 14:43
sto provando a popolare una gridview utilizzando un web service, ecco l'errore che mi viene fuori:
Il tipo dell'origine dati non è valido. Deve essere IListSource, IEnumerable o IDataSource.
Il webservice dovrebbe restituirmi un datatable
grazie
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
gio 6 set 2007 - 14:53
>sto provando a popolare una gridview utilizzando un web service,
>ecco l'errore che mi viene fuori:
>
>Il tipo dell'origine dati non è valido. Deve essere IListSource,
>IEnumerable o IDataSource.
>
>
>Il webservice dovrebbe restituirmi un datatable
Ciao!
prova a stampare con GetType il tipo di ritorno del metodo che richiami col ws..
se fosse datatable, l'errore non ci sarebbe, poichè datatable implementa le corrette interfacce per poter essere un datasource..
>
>grazie
di nulla!
>
Alx81 =)
http://blogs.dotnethell.it/suxstellino
deganolu
Profilo
| Newbie
40
messaggi | Data Invio:
gio 6 set 2007 - 15:12
ecco il mio esempio:
Dim elenco As ws.elenco = New ws.elenco
elenco.Credentials = System.Net.CredentialCache.DefaultCredentials
griglia.datasource=elenco.tabella
griglia.databind
DOVE SBAGLIO ?
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
gio 6 set 2007 - 15:31
>ecco il mio esempio:
>
>Dim elenco As ws.elenco = New ws.elenco
>elenco.Credentials = System.Net.CredentialCache.DefaultCredentials
qui prova a fare una response.write di elenco.GetType() e vedi cosa ti stampa..
poi fammi sapere..
Alx81 =)
http://blogs.dotnethell.it/suxstellino
deganolu
Profilo
| Newbie
40
messaggi | Data Invio:
gio 6 set 2007 - 16:01
Dim elenco As Globale.utenti = New Globale.utenti
elenco.Credentials = System.Net.CredentialCache.DefaultCredentials
Response.Write(elenco.ElencoUtenti.GetType())
'popola la griglia
Me.ElencoUtenti.DataSource = elenco.ElencoUtenti
Me.ElencoUtenti.DataBind()
risultato: Globale.ElencoUtentiResponseElencoUtentiResult
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
gio 6 set 2007 - 16:43
>risultato: Globale.ElencoUtentiResponseElencoUtentiResult
ecco.. quello non è un datatable.. quindi non implementa l'interfaccia che ti serve per essere messo in un data source.
Devi controllare com'è la classe Globale.ElencoUtentiResponseElencoUtentiResult e se vuoi che faccia da datasource devi implementare una delle interfacce definite nell'errore.
Oppure, se sai che puoi ciclare il contenuto, è un po' più pesante, ma prendi ogni risultato e lo inserisci in un datatable.. è una cosa un po' bruttina..
Secondo me la cosa migliore è vedere intanto com'è fatta la classe di ritorno del metodo..
poi scegli, se implementare l'interfaccia, se far fare a chi ti espone il metodo un overload che ti torna un datatable nativo oppure se cercare qualche accrocchio come quello del ciclo e del popolamento di un nuovo datatable..
vedi tu
Alx81 =)
http://blogs.dotnethell.it/suxstellino
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 !