DataSet Ds;
    DataTable Dt;
    SqlConnection Conn = new SqlConnection(strconn);
    Conn.Open();
    String sql = "select top 5 * from News order by ID desc" ;
    Ds=new DataSet();
    SqlDataAdapter Da = new SqlDataAdapter(sql,Conn);
    Conn.Close();
    Da.Fill(Ds,"News");
    Dr=Ds.Tables["News"];
    while(Dt.Read())
{
List=List+"<li>"+Dt["Title"].ToString()+"</li>";
}
NoticeList="<ul>"+List+"</ul>";提示 :编译器错误消息: CS0117: “System.Data.DataTable”并不包含“Read”的定义

解决方案 »

  1.   

    DataSet Ds;
        DataTable Dt;
        SqlConnection Conn = new SqlConnection(strconn);
        Conn.Open();
        String sql = "select top 5 * from News order by ID desc" ;
        Ds=new DataSet();
        SqlDataAdapter Da = new SqlDataAdapter(sql,Conn);
        Conn.Close();
        Da.Fill(Ds,"News");
        Dt=Ds.Tables["News"];
        while(Dt.Read())
        {
        List=List+"<li>"+Dt["Title"].ToString()+"</li>";
        }
        NoticeList="<ul>"+List+"</ul>";提示 :编译器错误消息: CS0117: “System.Data.DataTable”并不包含“Read”的定义
      

  2.   

    用错ado.net对象了
    SqlDatareader Dr = new SqlDatareader (sql,Conn);
    while(Dr.Read())
        {
        List=List+"<li>"+Dt["Title"].ToString()+"</li>";
        }这个成立
      

  3.   

    while(Dt.Read())
        {
        List=List+"<li>"+Dt["Title"].ToString()+"</li>";
        }
    应改为:
    for (int i=0;i<Dt.Rows.Count ;i++)
    {
        List=List+"<li>"+Dt.Rows[i]["Title"].ToString()+"</li>";
    }
      

  4.   

    DataSet Ds;
        DataTable Dt;
        SqlConnection Conn = new SqlConnection(strconn);
        Conn.Open();
        String sql = "select top 5 * from News order by ID desc" ;
        Ds=new DataSet();
        SqlDataAdapter Da = new SqlDataAdapter(sql,Conn);
        Conn.Close();
        Da.Fill(Ds,"News");
        Dr=Ds.Tables["News"];
        foreach(DataRow dr in Dt.Rows)
        {
        List=List+"<li>"+dr["Title"].ToString()+"</li>";
        }
        NoticeList="<ul>"+List+"</ul>";DataTable 没有Read方法
    DataReader 才有这个方法
      

  5.   


    for (int i=0;i <Dt.Rows.Count ;i++) 

        List=List+" <li>"+Dt.Rows[i]["Title"].ToString()+" </li>"; 
    } 可以
      

  6.   

    如果是以读的方式取出数据,那你就参照一楼用SqlDatareader 对象。
    如果你已经取到了结果集,也就是说用了SqlDataAdapter 那你就可以用for循环一行一行的取出数据;for(int i=0;i<DS.Tables["News"].Rows.count;i++)
    {
    }
      

  7.   

    while(Dt.Read())這句不能這么用if (Dt!= null && Dt.Rows.Count>0)
    {
       for(int i=0;i<Dt.Rows.Count;i++)
       {
          ……
       }
    }