我的Gridview数据全部是根据ID重数据库读出来的,只不过开始读取的是一行,绑定给Gridview,然后在读取一条绑定给Gridview,那样Gridview,就显示2条数据了,以此类推。这样要怎么做,有代码参考么,谢谢,一定多给分

解决方案 »

  1.   

    为什么要根据ID一次读一条,这样读,你不觉得性能很低吗?你一次都出来绑定不就是了吗?
    要想你这样类似不断添加行的想法,
    那你可以定义个List,每次查到的数据先存到List中,然后在把List复制给GridView的datasource.
      

  2.   

    我是做的点餐系统,左边点击一下重数据库读出来的值,又边Gridview上就显示一条,在点击在显示
      

  3.   

    给你个思路,自己编写代码调试一下吧!第一次读取一行,绑定到Gridview后,读取第二行前你先把Gridview上显示的数据放到一个table里,(label也行,就得一个一个放)然后再从数据库读取一条数据,读完后把读到数据添加到table里,最后用用Gridview显示table的数据就行了。-------------------
    记着结贴给分,哈哈!
      

  4.   

    点餐系统如同购物车。通过session保存dataset
    点击一条数据。添加数据到session里。在其他页面显示
    ViewState只能在当前页面有效
      

  5.   

    每个餐品都有一guid列,然后弄个数组,选哪些,就把对应的guid存数组,数组放session,然后购建sql语言去取数据
    where id=@id1 or id=@id2 or id=@id3...
    最后取来databind gridview
      

  6.   

            string Cytype = Request.QueryString["Cytype"];
            string sql = "select left(Cy_Name,3)+'...' Cy_Name,Age from Cp_Name where PKID='" + 26 + "'";
            SqlCommand com = new SqlCommand(sql, con);
            SqlDataAdapter da = new SqlDataAdapter(com);
            DataTable dt = new DataTable();
            //DataSet ds = new DataSet();
            da.Fill(dt);
            ViewState["dt"] = dt;
            if (ViewState["dt"] != null)
            {
                dt = (DataTable)ViewState["dt"];
                DataRow dr = dt.NewRow();
                dr["Cy_Name"] = dt.Rows[0]["Cy_Name"];
                dr["Age"] = dt.Rows[0]["Age"];
                dt.Rows.Add(dr);
                ViewState["dt"] = dt;
            }
            GridView1.DataSource = dt;
            GridView1.DataBind();这样写可以么
      

  7.   

    楼上的应该可以了,通过绑定的table添加数据
      

  8.   

    不行,ViewState["dt"] = dt; 不管怎么样他都有数据,我没传值进去,他都会执行 if (ViewState["dt"] != null) 
            { 
                dt = (DataTable)ViewState["dt"]; 
                DataRow dr = dt.NewRow(); 
                dr["Cy_Name"] = dt.Rows[0]["Cy_Name"]; 
                dr["Age"] = dt.Rows[0]["Age"]; 
                dt.Rows.Add(dr); 
                ViewState["dt"] = dt; 
            } 
    不知道怎么解决
      

  9.   

    建议不要用ViewState,用Session。
      

  10.   

    还有就是你所说的也可以存在客户端,这样的话减少了数据库的访问,其实,你在点击增加到Gridview中时并没有访问数据库,只有到你确认这次点餐时才会进行数据库的访问,建议一次插多条数据,原来的数据自己找个东东存起来。
      

  11.   

    这个方法可以实现LZ的效果,用JS动态生成TABLE