你调用的对象是空的。 - c# - Repeater - DataSet

时间:2012-01-03 05:50:10

标签: c# object reference null dataset

enter image description here

您好,上面的图片显示了我每次过滤从我创建的对象生成的DataTable时遇到的异常。

dtHistory = cBLRead.ds2.Tables [“ScheduleHistory”]; - >这实际上填充了dtHistory。

dtHistory.DefaultView.RowFilter = string.Format(“{0})”中的“[ExamScheduleID]”,hdnID) - >此行根据hdnID ...

过滤行

rptHistory 已在我的ASP客户端创建,并且在用户单击位于另一个DataTable中的特定行之前它将保持为空...

我将dtHistory.Rows.Count固定为显示dtHistory不为空

我将如何解决这个问题?

---这就是我想要发生的事情---

每当用户从DataTable点击一行特定的考试时,就会弹出一个包含一个显示考试重考历史的转发器的模态。

模态工作正常,但我制作的中继器没有。可能是这个例外的主要原因..

任何回复都将不胜感激。谢谢!

2 个答案:

答案 0 :(得分:4)

例外并不意味着dtHistorynull,而rptHistorynull。然后,当您尝试取消引用它以访问它抛出的DataSource属性时。

在屏幕截图中,ScheduleHistory方法似乎很可疑:

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

您实例化一个新对象并调用抛出该异常的FilterHistory方法,因为可能rptHistory成员仍然是一致的。

答案 1 :(得分:0)

您应该像这样分配数据源

rptHistory.DataSource=dtHistory.Tables[0];