在asp.net运网页时,出现用户代码未处理indexoutofrangeexception,还有在位置0处没任何行。是什么原因?

publicstaticDataRowdr(stringquery){//返回一行记录OleDbConnectioncon=Class1.createconn();//u... public static DataRow dr(string query)
{
//返回一行记录
OleDbConnection con = Class1.createconn();
//using(con)
// {
//con.Class1();
OleDbDataAdapter sda = new OleDbDataAdapter(query, con);
DataSet ds = new DataSet();
sda.Fill(ds, "anounce");
return ds.Tables["anounce"].Rows[0]; // 在这提示出的错
//}
}
还提示为:1.确保列表中最大索引小于列表最小索引 2.确保索引不是负数
展开
 我来答
百度网友e5436b3
2011-06-04 · 超过27用户采纳过TA的回答
知道答主
回答量:45
采纳率:0%
帮助的人:68万
展开全部
1.请先确认用你的Query语句在数据库里查询能查询到相关数据。
2.断点调试是解决这类异常的利器。
你可以在
sda.Fill(ds, "anounce");
int count = ds.Tables["anounce"].Rows.Count;//此处断点查看count的值是否大于零。
return ds.Tables["anounce"].Rows[0]; // 在这提示出的错
更多追问追答
追问
怎么看?提示的错还是那个
追答
1,第一点你已经确定了吗?确定你的Query语句可以查询到数据?
2,VS不会用断点?如果你真不会用断点,我就只能表示无能为力了!断点调试是最基本最常用最广泛的排错方法。
3,断点即在当前行的最前面加一个点。
csd314
2011-06-04 · TA获得超过493个赞
知道小有建树答主
回答量:730
采纳率:50%
帮助的人:554万
展开全部
确保ds.Tables["anounce"]有数据,否则ds.Tables["anounce"].Rows[0]自然会报错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3a9efc9
2011-06-04 · 超过13用户采纳过TA的回答
知道答主
回答量:69
采纳率:0%
帮助的人:33.4万
展开全部
肯定是没获取到数据
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式