Salvelox, sto usando una mia dll di nome Database per connettermi ad un db access, ma continuo ad avere un errore che dice :

"System.NullReferenceException: Riferimento a un oggetto non impostato su un'istanza di oggetto."

sulla riga che contiene il WHILE !

codice:
Dim objDB = New Database
Dim External_OLEREADER As OleDbDataReader	
                 
Dim ConnString as String			  
ConnString = ConfigurationSettings.AppSettings("strconn_access")

External_OLEREADER = objDB.ac_estrai(sql,ConnString)

while ( External_OLEREADER.Read() )
'
'
'
end while




La classe è questa :

codice:
Imports System.Web
Imports System.Web.UI
Imports System.Data
Imports System.Data.OleDb
Imports System.Data.SqlClient
Imports System.Configuration
Imports System.Web.UI.HtmlControls
Imports System.Web.UI.WebControls
Imports System.Web.UI.Page

Public Class Database
	Private _TipoDB as Integer
    
	' Oggetti ACCESS
	Public internal_OLECONN   as  OleDbConnection
	Public internal_OLEREADER as  OleDbdatareader

        ' Oggetti SQL SERVER
	Public internal_SQLREADER as SqlDatareader
	Public internal_SQLCONN as   SqlConnection

        Public strconn
 
       ' Costruttore
       Public Sub New()
    	' SQL SERVER
	'_TipoDB = 0

	' ACCESS
	_TipoDB = 1
       End Sub




	Public Property TipoDB as Integer
        Get
	  Return _TipoDB
	 End Get

	 Set
	  _TipoDB=Value
	 End Set
	End Property



 
	Private Function SqlConnetti(Indirizzo as String) as Boolean
   	 try
		  internal_SQLCONN = new SqlConnection(Indirizzo)
		  internal_SQLCONN.Open()
		  Return True
	 catch objexception as sqlexception
		  Return False
	 end try
	End Function

	Private Function OleDbConnetti(Indirizzo as String) as Boolean
     try
		  internal_OLECONN = new OledbConnection(Indirizzo)
		  internal_OLECONN.Open()
		  Return True
	 catch objexception as OleDbexception
		  Return False
	 end try
	End Function
  

	Public Function ac_estrai (StringaSQL as String, StringaConnessione As String) As OleDbDataReader
            if OleDbConnetti(StringaConnessione) = true then
			   	dim cmd as OleDbCommand
                cmd = new  OleDbCommand(StringaSQL, internal_OLECONN)
				internal_OLEREADER = cmd.ExecuteReader()
				Return internal_OLEREADER
			end if
    End Function


	 Public Function ss_estrai (StringaSQL as String, StringaConnessione As String) as SqlDataReader
			if SqlConnetti(StringaConnessione) = true then
			   	dim cmd as SqlCommand
                cmd = new  SqlCommand(StringaSQL, internal_SQLCONN)
				internal_SQLREADER = cmd.ExecuteReader()
				Return internal_SQLREADER
			end if
    End Function

End Class

dove diavolo sbaglio ?