protected void Page_Load(object sender, EventArgs e)
    {
        if ((string)Session["userRole"] != "0")
            Response.Redirect("Login.aspx");
        string tn = (string)Session["userName"];
        SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString1"].ConnectionString);
        SqlCommand cmd = conn.CreateCommand();
        cmd.CommandText = "select * from 课程 where 教师号='" + tn + "'";
        conn.Open();
        SqlDataReader dr = cmd.ExecuteNonQuery();//问题所在处1
        GridView1.DataSource = dr;
        GridView1.DataBind();
        dr.Close();
        SqlCommand cmd1 = conn.CreateCommand();
        cmd1.CommandText = "select 姓名 from 教师 where 教师号='" + tn + "'";
        SqlDataReader dr1 = cmd1.ExecuteNonQuery();//问题所在处2
        dr1.Read();
        LabMes.Text = (string)dr1[0] + "老师的任课情况:";
        Session["teacher"] = (string)dr1[0];
        conn.Close();
    }cmdcmd1

解决方案 »

  1.   

    SqlDataReader dr = cmd.ExecuteNonQuery();
    =>
    SqlDataReader dr = cmd.ExecuteReader();
      

  2.   


    正解ExecuteNonQuery是对insert update delete的执行,你要查询返回结果集,用ExecuteReader
      

  3.   

    把cmd.ExecuteNonQuery();改成cmd.ExecuteReader(); 
      

  4.   

    “ASP.teachercoursedetails_aspx”不包含“GridView1_SelectedIndexChanged”的定义,并且找不到可接受类型为“ASP.teachercoursedetails_aspx”的第一个参数的扩展方法“GridView1_SelectedIndexChanged”(是否缺少 using 指令或程序集引用?)
    这个又该怎么改?