调用函数时,对象引用未设置为对象的实例

时间:2012-06-13 19:04:49

标签: vb.net

我调用函数GetDataTable,当它到达返回行时,我收到错误消息: 对象引用未设置为对象的实例。

Dim DB As New DBConn
Dim gd As New DataAccess.GetData
Dim DT As New DataTable

Dim repotid1 As Decimal = 1150
Dim startdata1 As DateTime = "6/1/2012"
Dim EndDate1 As DateTime = "6/12/2012"
Dim StartDate3 As DateTime = "11/1/2011"
Dim Enddate3 As DateTime = "5/1/2012"

Dim sql1 As String = String.Format("EXEC [dbo].[usp_GetReportData_All] @ReportID=N'{0}', @StartDate=N'{1}' @EndDate=N'{2}', @StartDate2=N'{3}' @EndDate2=N'{4}'", repotid1, startdata1, EndDate1, StartDate3, Enddate3)

DT = DB.GetDataTable(sql1)

Public Class DBConn
Dim gd As New DataAccess.GetData

Public Function GetDataTable(ByVal sql As String) As DataTable

    Dim _appID As String = "IS"
    Dim _transID As String = "MSSQL01"


    Return gd.getDataTable(_appID, _transID, sql) 'I get the error message here

End Function
End Class

更新。我会看看是否可以使用DataAccess.GetData代码进行更新。我原本没有把它放在那里,因为我们的商店一直使用它并且没有任何问题。

1 个答案:

答案 0 :(得分:1)

如果没有看到gd.getDataTable中的内容,我们就无法帮助您。你在编写什么样的应用程序来调用这个函数?你能在编辑器中的那一行放一个断点并进入它以查看错误发生的位置吗?否则,您是否可以访问DataAccess.GetData代码?如果是这样,如果您在不破坏堆栈跟踪的情况下抛出原始异常,您将从中获得更多信息:

<强> BAD !!!!

Try
    'your code
Catch ex As Exception
    Throw New Exception(ex.Message)
End Try

不可

Try
    'your code
Catch ex As Exception
    Throw
End Try