当前位置:编程学习 > C#/ASP.NET >>

asp.net编程,当从数据库中读取的数据有若干条相同时,如何写个约束方法,让显示的结果遇到重复时只显示一次

简单举例如下数据库中的表:

   数据读取绑定到Repeater中,然后 <asp:HyperLink ID="HyperLink1" runat="server" Font-Underline="false" Height="15px"
Width="450px" Target="_blank" NavigateUrl='<%# "newslist.aspx?ID="+Eval("id")%> '>
<div  style="width:350px; text-align:left; float:left; ">
<%# //这里可以加个约束方法让显示出的数据不重复Eval("所属栏目")%>
</div>
</asp:HyperLink>

 

 

也就是让最后显示出来的数据仅为:

天气情况 

你好                 若无约束方法,则会显示成天气情况 

天气情况 

天气情况  

你好 

你好                        那个方法该怎么写?  是写在后台.cs文件里的,在前台.aspx中调用

补充:不要在数据库读取语句前加一句约束语,我想要的结果是:读取时可以重复,但是绑定到Repeater中,在HyperLink显示时,过滤掉重复的内容。  跟数据库以及数据库读取、连接等 无关。  只是写一个方法在对应页面的后台代码 里。
		
追问:朋友,我上面已经说啦,不要这个,你没看明白我说的问题哦

答案:楼主 你好 你可以用视图过滤还搞定:

将数据库查处的数据放到dalalist里面 暂时定义为d1

新建一个d2

 

da4alist 1 d1

datalist 2  d2

 


for(int i = 0;i < d1.Count;i++)
{
   if(i==0)
   {
      d2.Add(d1[0]);
   }
   else
   {
      int j = 0;
      for(j=0;j<d2.Count;j++)
      {
         if(d1[i].列名==d2[j].列名)
  {
     break;
  }
      }
      if(j==d2.Count)
      {
         d2.Add(d1[i]);
      }
   } 
}

 

最终绑定d2就行了

这个约束方法是写在SQL语句里面的,你好好的查一下SQL

sql 语句中加一个去除重复行的“distinc”,就可以了!

上一个:ASP.NET 如何解决视频缓冲问题(编程解决)!!???
下一个:在Asp.net中用js编程,将大写中文金额转换成为小写数字

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,