DataSet问题,怪异,没遇到过

lalafeng 2005-10-09 01:49:42
在取得DATASET中一个表的一行中某字段时 报:


在位置 2 处没有任何行。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.IndexOutOfRangeException: 在位置 2 处没有任何行。

源错误:


行 114: {
行 115: TreeNode quesNode=new TreeNode();
行 116: quesNode.Text=qusDS.Tables[0].Rows[j][2].ToString();//这里!!!!!!!!
行 117: quesNode.Type=qusDS.Tables[0].Rows[j][0].ToString();
行 118: paperNode.Nodes.Add(quesNode);


从出错的地方看出qusDS.Tables[0].Rows[j][2].ToString();没有值 靠
这个qusDS是通过调用一个方法并且传递ID号 返回的一个DATASET 一直跟踪 发现从刚写入到DS中的时候 就是下面的情况







在运行时在立即窗口的到:

qusDS.Tables[0].Rows[0][2] //不用tostring()方法就出来字符串
"新题目,请修改."

qusDS.Tables[0].Rows[0][2].ToString()
错误:“qusDS.Tables[0].Rows[0][2].ToString”不存在 //加了tostring()方法却失败

qusDS.Tables[0].Rows[0]["question_text"]
"新题目,请修改."

qusDS.Tables[0].Rows[0]["question_text"].ToString()
错误:“qusDS.Tables[0].Rows[0]["question_text"].ToString”不存在
...全文
104 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lalafeng 2005-10-13
  • 打赏
  • 举报
回复
从DA填充到DS里的时候就已经没有
qusDS.Tables[0].Rows[j][2].ToString了
但是
qusDS.Tables[0].Rows[j][2]却可以读出来值!!

我操~
lalafeng 2005-10-09
  • 打赏
  • 举报
回复
保证数组不应该越界啊
lyb_abiandbel 2005-10-09
  • 打赏
  • 举报
回复
大多数是数组越界

没错!检查一下数组!
njuzgj 2005-10-09
  • 打赏
  • 举报
回复
Tree的确是个很难的问题
terryshi 2005-10-09
  • 打赏
  • 举报
回复
IndexOutOfRangeException
大多数是数组越界,[XX]肯定有个不存在
swordragon 2005-10-09
  • 打赏
  • 举报
回复
你的错误与运行时在立即窗口中的显示没有任何关系的。

可能是你的j值超过了实际的行数。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧