我调用函数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代码进行更新。我原本没有把它放在那里,因为我们的商店一直使用它并且没有任何问题。
答案 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