DataSet

mercoledì 16 novembre 2005 - 13.19

Marc1982 Profilo | Newbie

Ciao a tutti
il mio problema riguarda il DataSet perchè partendo da un esempio preso da in giro sulla rete ho provato a riepire un dataset con una semplice query di selezione però mi da il seguente errore:

Dim Connessione As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Server.MapPath("assistenza.mdb"))
Connessione.Open()
Dim Adapter As New OleDbDataAdapter("Select * from lavori", Connessione)
Dim ds As DataSet = New DataSet
Adapter.Fill(ds, "lavori")

ERRORE:
C:\Inetpub\wwwroot\Assistenza\Assistenza1\dataset.aspx.vb(37): Overload resolution failed because no accessible 'Fill' can be called with these arguments:
'Public Function Fill(dataSet As System.Data.DataSet, srcTable As String) As Integer': Value of type 'Assistenza1.dataset' cannot be converted to 'System.Data.DataSet'.
'Public Function Fill(dataTable As System.Data.DataTable, ADODBRecordSet As Object) As Integer': Value of type 'Assistenza1.dataset' cannot be converted to 'System.Data.DataTable'.

DOVE SBAGLIO...allego anche lo ZIP della pagina di prova la pagina da provare è : dataset.aspx

GRAZIE MILLE A TUTTI

totti240282 Profilo | Guru

hai provato solo a fare cosi ???



Adapter.Fill(ds)

C'è solo un capitano !!!!!!

Cteniza Profilo | Guru

Probabilmente non riesci ad accedere al database.
Tra l'altro non c'è bisogno con il dataadapter di aprire la connessione prima
Esempio:
Dim cn as New OleDbConnection(stringa connessione)
Dim cm As New OleDbCommand("select ...",connessione)
Dim da As New OleDbDataAdapter()
da.SelectCommand = cm
Dim ds As New DataSet("Dati")
da.Fill(ds,"tabella")
(questo tipo però non prevede aggiornamenti sul database)

freeteo Profilo | Guru

ciao,
il tuo problema deriva da 1a cosa simpatica che magari non ti sei accorta e incasina il compilatore:
hai creato la classe che si chiama come l'oggetto del framework ovvero "dataset" :-)

la parte di codice che incasina infatti è proprio "...Partial Class dataset ..." perche qui definisci la classe con 1 nome che dovresti cambiare in qualsiasi altro.Il problema non arriva direttamente da te ma da vs che crea questa classe parziale ricavandola dal nome della pagina che va a creare.
Non ti resta altro che cambiare quella riga di codice e anche quella che dice alla pagina aspx di usare quella classe (pag aspx riga1) "...Inherits="Assistenza1.dataset"..."

con 1 nome alternativo (i due devono essere uguali) e il gioco è fatto
Niente paura il tu ocodice è corretto. ;-)


***
caro Totti240282 se invece di scrivere piccoli pezzetti di codice ti degnassi di scrivere qualcosa di piu pensato magari diventa di aiuto anche agli altri!
lo so che non è sbagliato quello che hai scritto ma il forum ha 1a certa etica e va seguita...non serve a niente scrivere con velocita' bisogna scrivere con qualita'...
grazie ciao
***

Matteo Raumer
.net addicted :-)
http://blogs.dotnethell.it/freeteo
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