早教吧 育儿知识 作业答案 考试题库 百科 知识分享

SqlDataReader取值取错,求助stringsqlstr="select*from[user]whereuserid='"+userid+"'anduserpass='"+userpass+"'";SqlCommandcmd=newSqlCommand(sqlstr,conn);SqlDataReaderdr=cmd.ExecuteReader();if(dr.HasRows){Session["u

题目详情
SqlDataReader取值取错,求助string sqlstr = "select * from [user] where userid='" + userid + "' and userpass='" + userpass + "'"; SqlCommand cmd = new SqlCommand(sqlstr,conn); SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { Session["userid"] = dr[0]["userid"];//问题就出在这里,错误代码是“无法将带[]的索引应用于“object”类型的表达式” } else { ....
▼优质解答
答案和解析
取值方法有两种 1.dr[数据库里的字段索引(从0开始数)].value 2.dr[直接取数据库里的列名]tostring(); 看你存了一个session 建议你 先做一个表的实体! 不要用session存一个用户的单条信息! 当你在查询到数据库里有这个用户的时候!你可以把用户的所有信息存在到这个实体里!而你的session呢!就只存一个用户实体!这样方便调用!