GridView行抛出错误

3

首先声明一下,我正在调试别人的代码 :-) 错误发生在一个代码例程中,该例程试图将数据从网格视图导出到Excel文件。

GridView gv = new GridView();
Table table = new Table();
int maxRow = 60000;
int gvrow = Data().Tables[0].Rows.Count;  

错误发生在Data().Tables[0].Rows.Count
立即窗口中的错误是:
? Data().Tables[0].Rows.Count
A first chance exception of type 'System.FormatException' occurred in System.Data.dll 'Data()' is null
错误消息是:
System.NullReferenceException was unhandled by user code Message="Object reference not set to an instance of an object." 这里出了什么问题,有什么想法吗?

2
Data()是什么?它指的是哪个组件? - Brian Mains
Data() 是一个子程序,调用一个存储过程,该存储过程返回一个数据集,用于填充 Excel 文件。 - user279521
3个回答

2

Data() 返回 null。请修复此问题。


问题在于它不会返回 null。总是会返回记录。 - user279521
@user279521:请验证一下,例如执行以下代码 var myData = Data(); if (myData == null) throw new Exception("Data() 返回了意外的 null");。目前看起来 Data() 确实返回了 null。 - Heinzi

0
我无法仅凭这段代码就确定(Data()应该做什么?),但我的猜测是,Data()的调用由于某种原因返回了null,或者至少返回了一些没有实际表格的数据集。

0
听起来您只需要在尝试访问属性之前检查Data()不为空即可。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接