c# datatable取值

我想在一个页面上用datatable取已审核的信息 其中包括已回复的信息和未回复的信息
title = GetData().Tables[0].Rows[0]["title"].ToString();
l_text = GetData().Tables[0].Rows[0]["leave_text"].ToString();
r_text = GetData().Tables[0].Rows[0]["reply_text"].ToString();
但是其中有些未回复的信息中r_text为空 所以会报“在位置 0 处没有任何行”
请问我该怎么处理 有什么好的解决办法呢 谢谢

第1个回答  2011-04-08
r_text = GetData().Tables[0].Rows[0]["reply_text"].ToString();
请将这句改为:
r_text = GetData().Tables[0].Rows[0]["reply_text"].value.ToString();
试下
如果不行,可以在数据库设计中,把reply_text字段的默认值设置设置为" ",空,而不是NULL.
第2个回答  2011-04-08
你进行断点调试,看一下在你的dataTable中是否存在数据,如果不存在肯定就没有第一行了
第3个回答  2011-04-08
那就判断一下好了,如果为空r_text =“”,如果不为空再去取值
第4个回答  2011-04-08
判断一下就可以了呗、。、。
if(!string.IsNullOrEmpty(GetData().Tables[0].Rows[0]["reply_text"]))
{
r_text = GetData().Tables[0].Rows[0]["reply_text"].ToString();

}
第5个回答  2011-04-08
if(GetData().Tables[0].Rows[0]["title"]==null)
{
//没有数据
}
相似回答