“System.Data.SqlClient.SqlDataAdapter”并不包含“GetString”的定义 要怎样解决... 答对的给满分

解决方案 »

  1.   

    while (dr.Read())
                    {                    ListViewItem item1=new ListViewItem();
                        item1.Text=dr.GetString(1) + "(" + dr.GetString(0) + ")";
                        item1.Tag=dr.GetString(0);
                        item1.ImageIndex=0;
                        listView1.Items.Add(item1);
                    }
                    con.Close();
                }
    指着不包含GetString的定义..帮帮忙..
      

  2.   

    应该都是SqlDataAdapter 这个要改成SqlDataReader,因为SqlDataAdapter 没有GetString();
      

  3.   

    while (dr.Read()) 
                    {                     ListViewItem item1=new ListViewItem(); 
                        item1.Text=dr.GetString(1) + "(" + dr.GetString(0) + ")"; 
                        item1.Tag=dr.GetString(0); 
                        item1.ImageIndex=0; 
                        listView1.Items.Add(item1); 
                    } 
                    con.Close(); 
                } 
    里面说上下文不存在dr..怎样定义..谢谢..
      

  4.   

    可以这么定义:SqlDataReader dr = new SqlDataReader(); 
    另外你给你个网址,你看看http://www.cnweblog.com/maomao2008/articles/276901.html
      

  5.   

    可以:你前面应该有SqlCommand myCommand = new SqlCommand(mySelectQuery,myConnection, myTrans);这句话吧。
    那么你可以写成:SqlDataReader myReader = myCommand.ExecuteReader();
      

  6.   

    不可以...前面没有这句话.. if (comboBox2.DataSource != null && comboBox2.Text.Trim() != "")
                {
                    con.Open();
                    
                    string sql = "select year(enrolmenttime) from classinfo where classid = " + comboBox2.SelectedValue;
                    SqlCommand  cmd=new SqlCommand (sql,con);
                    int rxnf = Int32.Parse(cmd.ExecuteScalar().ToString());
                    sql = "select length from classinfo where classid = " + comboBox2.SelectedValue.ToString().Trim();
                    cmd.CommandText=sql;
                    int nianzhi = Int32.Parse(cmd.ExecuteScalar().ToString());
                    int nf = rxnf;
                    comboBox3.Items.Clear();
                    for (int i=1;i<=nianzhi*2;i++)
                    {
                        comboBox3.Items.Add(nf + "" + ((i+1)%2+1));
                        if((i%2)==0)
                        nf++;
                    }                listView1.Items.Clear();
                    sql = "select studentnumber,name from studentinfo   where classid = " + comboBox2.SelectedValue + " order by studentnumber asc";
                    cmd.CommandText=sql;
                    SqlDataReader reader = cmd.ExecuteReader();
                    SqlDataReader dr = new SqlDataReader();  
                    while (dr.Read())
                    {                    ListViewItem item1=new ListViewItem();
                        item1.Text=dr.GetString(1) + "(" + dr.GetString(0) + ")";
                        item1.Tag=dr.GetString(0);
                        item1.ImageIndex=0;
                        listView1.Items.Add(item1);
                    }
                    con.Close();
                }
                else
                {
                    comboBox3.Items.Clear();
                    comboBox3.SelectedValue=-1;
                    listView1.Clear();
                }
            
            }
    这是所有的代码..new SqlDataReader() 说这个没构造函数
      

  7.   

    把SqlDataReader dr = new SqlDataReader();   去掉。
    直接用 while (dr.Read()) 改成 while (reader.Read()) 试试