Object reference not set to an instance of an object.
125376Oct 14 2004 — edited Apr 15 2011Hi,
I have a strange error with the following environment:
- ODP.NET Release 10.1.0.2.0
- Visual Studio 2005 Beta
- .NET Framework 2.0 Beta
This error occurs with the Oracle provider only! If you modify the Imports statement in the following test case to use the Microsoft provider, everything works fine!
Any idea?
Thanks for help!
Stefan
--------------------------------------------------------
Imports Oracle.DataAccess.Client 'Oracle provider
'Imports System.Data.OracleClient 'Microsoft provider
Module Module1
Sub Main()
Dim connectionString As String = "data source=<<DATASOURCE>>;user id=<<UID>>;password=<<PWD>>;"
Dim connection As New OracleConnection(connectionString)
Dim commandText As String = "TEST_GET_NUMBER"
'CREATE OR REPLACE FUNCTION TEST_GET_NUMBER RETURN NUMBER IS
' BEGIN()
' RETURN 123;
'END TEST_GET_NUMBER;
connection.Open()
Dim command As OracleCommand = connection.CreateCommand()
With command
.CommandText = commandText
.CommandType = CommandType.StoredProcedure
Dim parameter As New OracleParameter
With parameter
.ParameterName = "GET_NUMBER"
.DbType = DbType.Int32
.Direction = ParameterDirection.ReturnValue
End With
.Parameters.Add(parameter)
Dim int As Integer = .ExecuteNonQuery()
'With "Imports Oracle.DataAccess.Client" -->> ERROR:
'---------------------------------------------------
'Message: "Object reference not set to an instance of an object."
'Source: "Oracle.DataAccess"
'StackTrace: " at Oracle.DataAccess.Client.OracleCommand.ExecuteNonQuery()
' at Test_ODP_NET.Module1.Main() in E:\Eigene Dateien\Visual Studio\Projects\Test.ODP.NET\Test.ODP.NET\Module1.vb:line 32
' at System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
' at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
' at (VSHostUtil.HostProc.RunUsersAssembly())
' at System.Threading._Thread.ThreadStart_Context(Object state)
' at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callBack, Object state, StackCrawlMark& stackMark)
' at System.Threading._Thread.ThreadStart()"
'With "Imports System.Data.OracleClient" -->> NO ERROR!
MsgBox(parameter.Value.ToString)
.Dispose()
End With
command = Nothing
End Sub
End Module