+ -
当前位置:首页 → 问答吧 → GridView绑定数据的问题!!好崩溃啊!!

GridView绑定数据的问题!!好崩溃啊!!

时间:2011-12-06

来源:互联网

是这样,我有一个listbox里面存储了多个通过用户输入的user id,现在我要依据这些user id (主键)先从数据库里得到相应数据(包括姓名,班级之类的)然后
通过gridview将所有listbox中涉及到的user id所对应的数据全部输出()!

我通过2种办法都没法达到这种效果:1,用sqldatasource 绑定listbox,可最后之输出第一个人的结果。
  2,就是想用循环依次将查询到的结果放入不同(同一个?)datatable,然后再加入一个dataset,最后将这个dataser绑定到gridview可是可是代码怎么怎么都不会写啊!!!

求思路!!求代码!!! !!

作者: Greengreyblack   发布时间: 2011-12-06

我也听崩溃的。。因为没看明白 楼主到底是什么问题

作者: id270   发布时间: 2011-12-06

查询数据,返回dataset 绑定到控件上就行了!!!!!!!!!!!

作者: hou306010849   发布时间: 2011-12-06

select * from 表 where user_id in(listbox中的所有id)

返回结果,绑定

作者: Return_false   发布时间: 2011-12-06

是你自己的sql语句没写好关gridview什么事
  select * from tablename where id in(id1,id2,id3)

gridview1.datasource=dataset
gridview1.databind();

作者: lovesheng1212   发布时间: 2011-12-06

现在我要依据这些user id (主键)先从数据库里得到相应数据(包括姓名,班级之类的)然后
通过gridview将所有listbox中涉及到的user id所对应的数据全部输出()!
---------------

select * from tableName where id in (....)

作者: Sandy945   发布时间: 2011-12-06

不是一个的写法吗?循环完后把 dataset绑定在gridview里面不就好了吗?

作者: FENG03   发布时间: 2011-12-06

可是Listbox里的数据每次都是不定的阿。
我要通过如下这种办法获得
C# code
 for (int i = 0; i< ListBox1.Items.Count; i++)
            {
                a[i] = ListBox1.Items[i].ToString();
                string sql = "select student_Name from studentwhere student_ID='" + a[i] + "'";
                SqlConnection sqlcnn = new SqlConnection(strConnection);
                sqlcnn.Open();}


这样就不能指定id了啊?
引用 4 楼 lovesheng1212 的回复:
是你自己的sql语句没写好关gridview什么事
select * from tablename where id in(id1,id2,id3)

gridview1.datasource=dataset
gridview1.databind();

作者: Greengreyblack   发布时间: 2011-12-06

不要在for 循环里 写SQL

在for循环里拼接

在循环后执行SQL

作者: Sandy945   发布时间: 2011-12-06

最终的目的是显示所有listbox中包含的user_id的信息,和你指定id有什么关系,要的是结果,而不是过程,你这么一条一条的查询,舒服么?

作者: Return_false   发布时间: 2011-12-06

大侠。。小女不才,还请大侠亲自演示下吧.....谢谢了!!!
引用 8 楼 sandy945 的回复:
不要在for 循环里 写SQL

在for循环里拼接

在循环后执行SQL

作者: Greengreyblack   发布时间: 2011-12-06

C# code

 StringBuilder userIDList = new StringBuilder();
        foreach (ListItem item in ListBox1.Items)
        {
            userIDList.AppendFormat("{0},",item.Value);
        }
        string sql = string.Format("select * from TableName where userid in (0)", userIDList.ToString().TrimEnd(','));

作者: ycz815   发布时间: 2011-12-06