您好,上面的图片显示了我每次过滤从我创建的对象生成的DataTable时遇到的异常。
dtHistory = cBLRead.ds2.Tables [“ScheduleHistory”]; - >这实际上填充了dtHistory。
dtHistory.DefaultView.RowFilter = string.Format(“{0})”中的“[ExamScheduleID]”,hdnID) - >此行根据hdnID ...
过滤行rptHistory 已在我的ASP客户端创建,并且在用户单击位于另一个DataTable中的特定行之前它将保持为空...
我将dtHistory.Rows.Count固定为显示dtHistory不为空
我将如何解决这个问题?
---这就是我想要发生的事情---
每当用户从DataTable点击一行特定的考试时,就会弹出一个包含一个显示考试重考历史的转发器的模态。
模态工作正常,但我制作的中继器没有。可能是这个例外的主要原因..
任何回复都将不胜感激。谢谢!
答案 0 :(得分:4)
例外并不意味着dtHistory
是null
,而rptHistory
是null
。然后,当您尝试取消引用它以访问它抛出的DataSource
属性时。
在屏幕截图中,ScheduleHistory
方法似乎很可疑:
ClaretExamSchedule callMethod = new ClaretExamSchedule();
callMethod.FilterHistory(hdnId);
您实例化一个新对象并调用抛出该异常的FilterHistory
方法,因为可能rptHistory
成员仍然是一致的。
答案 1 :(得分:0)
您应该像这样分配数据源
rptHistory.DataSource=dtHistory.Tables[0];