Dealer dl = new Dealer();
using (SqlDataReader dr = SqlHelper.ExecuteReader(CommandType.StoredProcedure, "searchOnDealer", new SqlParameter("@ID", dID)))
{
if (dr.HasRows)
{
dl.ID = dr.GetInt32(0);
dl.Name = dr.GetString(1);
dl.Address = dr.GetString(2);
dl.Theme = dr.GetInt32(5);
}
}经调试:dl.ID = dr.GetInt32(0); 我运行到这里就出错
说:在没有任何数据时进行无效的读取尝试。
请指教!
有问题吧, 存储过程调用对不对?参数是否正确?
{
dl.ID = reader.GetInt32(0);
dl.Name = reader.GetString(1);
dl.Address = reader.GetString(2);
dl.Theme = reader.GetInt32(5);}
{
int id=0;
int.TryPase(dr["字段名1"].ToString();,out id);
dl.ID=id;
dl.Name = dr["字段名2"].ToString();
dl.Address = dr["字段名3"].ToString();
int theme=0;
int.TryPase(dr["字段名5"].ToString();,out theme);
dl.Theme =theme; //如果确定数据没有问题,就用Parse()
}