2011-03-31 69 views
0

需要幫助。必須分配給物業或使用其物業價值

我覺得奇怪的是,當我沒有在類中分配任何屬性時發生此錯誤。以下是我的源代碼。

Public Function GenerateNonContainerReport(ByVal dateFrom As Date, ByVal dateTo As Date, ByVal userID As String) As rptNonContainerized 
    Try 
     Dim dtNonContainer As New dsPrint.dtNonContainerDataTable 

     Dim strSQL As String = "EXEC dbo.sp_RetrieveNonContainerizedRev @StartDate=" + dateFrom + ", @EndDate=" + dateTo + ", @UserID=" + userID 

     myConnectionSettings = New ConnectionStringSettings("SQLConnection", strConn, "System.Data.SqlClient") 
     myProvider = DbProviderFactories.GetFactory(myConnectionSettings.ProviderName) 
     db = New GenericDatabase(myConnectionSettings.ConnectionString, myProvider) 
     dbCommand = db.GetSqlStringCommand(strSQL) 

     Dim dTable = db.ExecuteDataSet(dbCommand).Tables(0) ' error occurs here 

    Catch ex As Exception 
     Return Nothing 
    End Try 
    End Sub 

該應用程序正在使用一個存儲數據表的xsd文件。而且,這個存儲過程接受3個參數。這裏是否有可能發生錯誤?

最新更新 我得到這個錯誤「對象引用未設置爲對象的實例。」我現在想知道在我沒有實例化的代碼中。

+0

例外

  • 處置在什麼地方發生錯誤? – 2011-03-31 10:11:04

  • +0

    當數據在數據表中傳遞時發生錯誤。 – Musikero31 2011-04-01 02:51:24

    回答

    0

    檢查DataSet中已表返回

    dataSet = db.ExecuteDataSet(dbCommand) 'Break here and inspect the object 
    

    查找dataSet.Tables

    此外,

    • 不要新的數據表
    • 不要使用帕斯卡符號如strSQL - > sql
    • 注意SQL注入
    • 不要吃在最後
    +0

    我會修改代碼以方便閱讀。 此外,我沒有看到任何與錯誤和pascal符號的關係,因爲用戶可以聲明任何變量名稱。 – Musikero31 2011-04-01 02:30:08

    +0

    我檢查了代碼,並且將它分配給特定參數時似乎有錯誤。什麼是最好的事情? – Musikero31 2011-04-01 03:29:55