簡體   English   中英

你調用的對象是空的。 -c#-中繼器-數據集

[英]Object reference not set to an instance of an object. - c# - Repeater - DataSet

在此處輸入圖片說明

嗨,上圖顯示了每次我過濾從創建的對象生成的DataTable時遇到的異常。

dtHistory = cBLRead.ds2.Tables [“ ScheduleHistory”]; ->這實際上填充了dtHistory。

dtHistory.DefaultView.RowFilter = string.Format(“ [[ExamScheduleID] in({0})”,hdnID) ->此行基於hdnID過濾行...

rptHistory已在我的ASP客戶端中創建,並且直到用戶單擊位於另一個DataTable中的特定行之前,它將保持為空。

我固定了dtHistory.Rows.Count以顯示dtHistory不為null

我將如何解決這個問題?

---這就是我想發生的事情----

每次用戶單擊DataTable中的特定考試行時,都會彈出一個模式,其中包含一個顯示“重新安排考試歷史記錄”的Repeater。

模態工作正常,但我制作的中繼器卻不能。 造成此異常的主要原因可能是什么。

任何答復將不勝感激。 謝謝!

該異常並不意味着dtHistorynull而是rptHistorynull 然后,當您嘗試取消引用它以訪問它引發的DataSource屬性時。

在屏幕快照中, ScheduleHistory方法似乎可疑:

ClaretExamSchedule callMethod = new ClaretExamSchedule();
callMethod.FilterHistory(hdnId);

您實例化一個新對象,然后調用FilterHistory方法,該方法將引發異常,因為rptHistory成員可能仍是統一的。

您應該像這樣分配數據源

rptHistory.DataSource=dtHistory.Tables[0];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM