日期:2014-05-18  浏览次数:20362 次

Gridview怎样循环绑定数据???
现在有这么个需求:根据线路名称line从表Userprofile中找出userid和moterid,然后再根据userid和moterid从表energer中找出需要的数据(几个列数据,就不写出了),然后绑定到Gridview中,该怎么实现?
  (需要注意的是根据line从Userprofile找出的userid和moterid是大量的(一般是几千条以上))。
我的想法是先通过DataReader找出userid和moterid,然后通过read()方法循环,循环语句中通过Dataset绑定到Gridview中,但问题出现了,只能绑定最后一条userid和moterid,前面的都被覆盖掉了。
  我不想直接用一条sql语句整出,那样会出现其它问题......
  希望大家能给我一个能够嵌套循环绑定的方法来解决此问题,此问题我想了一天多了,不知怎么弄,忘大家指点一下。

------解决方案--------------------
写一个视图或者存储过程,在循环的外面定义一个集合,符合条件的就存入集合中,循环完了在绑定到gridview
------解决方案--------------------
首先看你的SQL条件是否是查出一条数据,如果不是,如下
while(dr.read())
{

}


------解决方案--------------------
在绑定事件里面去绑定第二层的数据
------解决方案--------------------
做法类似
http://dotnet.aspx.cc/article/f73eeaa9-2bdc-47fd-afd2-59f2fa4897f5/read.aspx

你改出自己的即可
------解决方案--------------------
您看这个sql是你说的把
select * from energer join Userprofile on 
energer .userid=Userprofile. userid and energer moterid=Userprofile ..moterid
where Userprofile.line=@line
得到Dataset直接绑定就可以了
------解决方案--------------------
是不是嵌套?没仔细看感觉是
------解决方案--------------------
你是说 前一个条件的结果总被后一个条件的结果覆盖吧 就搞个视图把需要的存在视图 然后dataset 绑定
------解决方案--------------------
GridView嵌套吧