Försöker att retunera DataReader men lyckas ej. HAr ingen kolla på detta faktiskt! Jag brukar köra följande: Jag tycker du skall ta dig en titt på Data Access Application Block for .NET (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/uip.asp"). Kanske inte fullständigt optimalt, men en bra grund för att slippa skriva en massa kod själv. du har ett fel på följande rad:Retunera DataReader
Felmeddelande: Cannot be converted to 1dimension array of system.data.oledb.OleDbDataReader
Kan någon tyda och förklara för mig, tack!
Kod exempel:
Class tree_lib
.....
.....
Dim objReader As OleDbDataReader()
Dim objDB As New database()
objReader = objDB.getDataReader(SQL)
....
end class
Public Class database
.....
.....
Public Function getDataReader(ByVal SQL As String) As OleDbDataReader
Dim dbCmd As OleDbCommand
Dim dbReader As OleDbDataReader
dbCmd = New OleDbCommand(SQL, dbCon)
dbReader = dbCmd.ExecuteReader(CommandBehavior.CloseConnection)
dbCmd.Dispose()
Return dbReader
End Function
end classSv: Retunera DataReader
Public Shared Function ReturnDataReader(ByVal sqlquery As String) As SqlDataReader
' observera att connection ligger öppen i denna rutin och tar minne
' i servern, men håller tråden öppen och pooling verkar bli bättre
' Create Instance of Connection and Command Object
Dim myConnection As SqlConnection = New SqlConnection(GetConnectionString)
Dim myCommand As SqlCommand = New SqlCommand(sqlquery, myConnection)
' Mark the Command as a SPROC
myCommand.CommandType = CommandType.Text
Try
' öppnar anslutningen och exekverar frågan
myConnection.Open()
Dim result As SqlDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection)
' returnerar resultatet
Return result
Catch ex As SystemException
' adderar info till loggfilen
' meddelar felet
Throw New SystemException("Fel vid anrop av sql-fråga: " & sqlquery & "-" & Err.Description)
End Try
End Function
Shared Function GetConnectionString() As String
' läggs i web.config med add key = xxx, value = provider----
GetConnectionString = ConfigurationSettings.AppSettings("ConnectionString")
End Function
Sen så anropar jag detta med :
' (namespace, classname, function)
Dim rs As SqlClient.SqlDataReader = pellesoft.dbfunctions.ReturnDataReader("select * from tabell")
While rs.Read
End While
rs.Close
Sv: Retunera DataReader
Sv: Retunera DataReader
<code>
Dim objReader As OleDbDataReader()
</code>
Där deklarerar du en array, men på raderna efter försöker använda de som en helt vanlig variabel. Ta bort ()