sql語句沒錯 我测试有一条数据 但是调试发现dt.Rows.Count是等于0 不执行循环了 怎么回事???
  protected void dlBig_ItemDataBound(object sender, DataListItemEventArgs e)
    {
        if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
        {
            Label lblMen = e.Item.FindControl("lblMeaning") as Label;
            Label lblTable = e.Item.FindControl("lblDataList") as Label;
            string sql = "select content_id,content_title from mdsets_main_content where content_type='" + lblMen.Text + "'";
            DataTable dt = new DataTable();
            dt = OracleHelper.getDB(sql);
            lblTable.Text = "<ul style='width:100%;' id='mst'>";
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                lblTable.Text += "<li><span>" + dt.Rows[i][0] + "</span><a href='javascript:void(0)' target='_blank'>" + dt.Rows[i][1] + "</a></li>";
            }
            lblTable.Text += "</ul>";
        }
    }

解决方案 »

  1.   

    纠正一下 我这里是些到 for (int i = 1; i < dt.Rows.Count; i++)
    不是for (int i = 0; i < dt.Rows.Count; i++)
      

  2.   

    用for (int i = 0; i < dt.Rows.Count; i++)
    试下
    另外:
    dt.Rows[i][0] 这样的后面加上dt.Rows[i][0].ToString()
      

  3.   

    你的DataTable查到数据没,自己调试一下就知道了
      

  4.   

    dt = OracleHelper.getDB(sql);
    是否得到数据
      

  5.   

    没有得到数据呗,查下sql语句 数据库是否有数据
      

  6.   

    dt = OracleHelper.getDB(sql);
    调试看下dt的count,
    还有就是row是从0计算
      

  7.   

    有可能是页面回传了加上if(!Ispostback)试试看。