ds.Tables["表名"].Rows[0][0].ToString()
使用表名时报错,不是表名写错了;异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。源错误:
行 49: //DataAccess.DataSet(sql,ref dt);
行 50: //IDLabel.Text=IdStr.ToString();
行 51: IDLabel.Text = ds.Tables["UserKtvInfo"].Rows[0]["UserKtvInfoId"].ToString();
行 52: KtvNameLabel.Text = ds.Tables[0].Rows[0][1].ToString();
行 53: KtvNumLabel.Text = ds.Tables[0].Rows[0][2].ToString();
使用
ds.Tables[0].Rows[0][0].ToString()
是完全正常
有知道原因的朋友请赐教,先谢谢了~~~~~~~~~ :)
使用表名时报错,不是表名写错了;异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。源错误:
行 49: //DataAccess.DataSet(sql,ref dt);
行 50: //IDLabel.Text=IdStr.ToString();
行 51: IDLabel.Text = ds.Tables["UserKtvInfo"].Rows[0]["UserKtvInfoId"].ToString();
行 52: KtvNameLabel.Text = ds.Tables[0].Rows[0][1].ToString();
行 53: KtvNumLabel.Text = ds.Tables[0].Rows[0][2].ToString();
使用
ds.Tables[0].Rows[0][0].ToString()
是完全正常
有知道原因的朋友请赐教,先谢谢了~~~~~~~~~ :)
解决方案 »
- 编写一个asp.net页面控件,实现一个属性OddCount,并自动将从1到OddCount的所有奇数求和,输出到浏览器相应位置上。
- 鼠标勾起你的性趣(玩过后好玩的记得要顶哦!)
- 服务器多项目组建中遇到的问题,有经验的看看~谢谢
- 关于FORMSET的问题
- forms验证:有两个登录页面,能根据要求转到相应的页面吗?
- gif的动画图片,可否实现文字水印和图片水印的效果呢?
- 想了解一下WEB服务器被访问时的承载能力。
- Asp.Net Session 未将对象引用到实例
- asp与sql 2000的连接问题
- 谁能告诉我这个程序到底那里有问题?
- 分不多了,问个小问题,SESSION跨虚拟目录问题!
- SQL高手进来呀,呵呵
ds.Tables[0].Rows[0][0].ToString()
是完全正常说明是表名错了 你填充DATASET的时候的表名要和这里的名字一样才行
ds.Tables["UserKtvInfo"]是否为null你的ds是怎么fill的,给出这部分代码
代码片段如下:
/// <summary>
/// 返回指定Sql语句的DataSet
/// </summary>
/// <param name="sqlstr">传入的Sql语句</param>
/// <returns>DataSet</returns>
public static DataSet DataSet(string sqlstr)
{
DataSet ds= new DataSet();
OleDbDataAdapter da=new OleDbDataAdapter();
try
{
openConnection();
comm.CommandType =CommandType.Text ;
comm.CommandText =sqlstr;
da.SelectCommand =comm;
da.Fill(ds);
}
catch(Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
closeConnection();
}
return ds;
}然后通过以下代码调用:
string IdStr=Request["id"];//获取当前信息ID
string sql="select * from [KtvInfo] where KtvId='"+IdStr+"'";
DataSet ds=Data.DataSet(sql);
IDLabel.Text = ds.Tables["KtvInfo"].Rows[0]["KtvId"].ToString();//这样写就报错
IDLabel.Text = ds.Tables[0].Rows[0]["KtvId"].ToString();//这样就没问题我想也是没有读取到数据而报错
关键是不知道问题出在哪里?
谢谢大家,继续讨论~~~~~~~~~~~~~~
这样 是不抱错还是能取出数据库里面的数据来???将缓存清理一下在看看
问题已经自己解决了
要用表名,必须在fill的时候指定表名~~~~~~~~
结帖了
谢谢大家了