Datalist嵌套Datalist实现显示类似说说评论的效果

问题描述

Datalist1显示say这个表的数据然后想在Datalist1中嵌套一个Datalist2用于显示对应的评论表2的sayID对应表1的id,若表2中找不到对应sayId则在对应的Datalist1中不显示Datalist2.难点在于如何达到“林夏”的说说下面只显示“黄磊”、“叶伟信”的评论,“韩寒”的下面只显示“程程”的评论。(林夏的id是3,所以查询对应的表2中sayId为3的行)。<body><formid="form1"runat="server"><div><asp:DataListID="DataList1"runat="server"DataKeyField="id"DataSourceID="SqlDataSource1"><ItemTemplate>id:<asp:LabelID="idLabel"runat="server"Text='<%#Eval("id")%>'/><br/>username:<asp:LabelID="usernameLabel"runat="server"Text='<%#Eval("username")%>'/><br/>text:<asp:LabelID="textLabel"runat="server"Text='<%#Eval("text")%>'/><br/>date:<asp:LabelID="dateLabel"runat="server"Text='<%#Eval("date")%>'/><br/>place:<asp:LabelID="placeLabel"runat="server"Text='<%#Eval("place")%>'/><br/><br/><asp:DataListID="DataList2"runat="server"></asp:DataList><br/></ItemTemplate></asp:DataList><asp:SqlDataSourceID="SqlDataSource1"runat="server"ConnectionString="DataSource=.;InitialCatalog=D:DESKTOP15321712401APP_DATADING.MDF;IntegratedSecurity=True"ProviderName="System.Data.SqlClient"SelectCommand="SELECT*FROM[say]"></asp:SqlDataSource></div></form></body>

解决方案

本帖最后由 u014090746 于 2016-06-19 12:05:15 编辑
解决方案二:

解决方案三:
楼上大神异常专业的回答
解决方案四:
引用1楼guwei4037的回复:web.config文件中数据连接为<configuration><connectionStrings><addname="conStr"connectionString="DataSource=.;AttachDbFilename=|DataDirectory|ding.mdf;UserID=sa;Password=1"providerName="System.Data.SqlClient"/><addname="ding_sql"connectionString="DataSource=.;AttachDbFilename=|DataDirectory|ding.mdf;IntegratedSecurity=true"/></connectionStrings><system.web><compilationdebug="true"targetFramework="4.0"><assemblies><addassembly="System.Configuration.Install,Version=4.0.0.0,Culture=neutral,PublicKeyToken=B03F5F7F11D50A3A"/></assemblies></compilation><pagescontrolRenderingCompatibilityVersion="3.5"clientIDMode="AutoID"/></system.web></configuration>

表1的表名是say表2的表名是say_back请大神指点如何把这一段换成ado.net连接查询数据库十分感谢您的耐心解答publicDataSetData(){DataSetds=newDataSet();DataTabledtParent=newDataTable();dtParent.Columns.Add("id",typeof(int));dtParent.Columns.Add("username",typeof(string));dtParent.Columns.Add("text",typeof(string));dtParent.Columns.Add("date",typeof(string));dtParent.Columns.Add("place",typeof(string));dtParent.Rows.Add(1,"摩根","这个...","2014.6","伦敦");dtParent.Rows.Add(2,"韩寒","潮流...","2015.7","湖南");dtParent.Rows.Add(3,"林夏","岁月...","2016.2","小城");dtParent.Rows.Add(4,"王菲","我会...","2015.9","香港");dtParent.Rows.Add(5,"郭敬明","我们...","2015.1","上海");DataTabledtChild=newDataTable();dtChild.Columns.Add("id",typeof(int));dtChild.Columns.Add("sayId",typeof(int));dtChild.Columns.Add("username",typeof(string));dtChild.Columns.Add("text",typeof(string));dtChild.Columns.Add("date",typeof(string));dtChild.Rows.Add(1,3,"黄磊","我是第一个评说","2016.6.1713:06:12");dtChild.Rows.Add(3,3,"叶伟信","评论林夏的说","2016.6.1712:26:43");dtChild.Rows.Add(4,2,"程程","我评论韩寒","2015.3.115:20:10");ds.Tables.AddRange(newDataTable[]{dtParent,dtChild});DataRelationdr=newDataRelation("relation",dtParent.Columns["id"],dtChild.Columns["sayId"]);ds.Relations.Add(dr);dtParent=ds.Relations["relation"].ParentTable;dtChild=ds.Relations["relation"].ChildTable;returnds;}

解决方案五:
publicDataSetData(){using(SqlConnectionconn=newSqlConnection("server=.;uid=sa;pwd=123456;database=test20151026;")){conn.Open();SqlCommandcmd=newSqlCommand("select*fromtopic;select*fromcomment;",conn);SqlDataAdaptersda=newSqlDataAdapter(cmd);DataSetds=newDataSet();sda.Fill(ds,"tables");DataTabledtParent=ds.Tables[0];DataTabledtChild=ds.Tables[1];DataRelationdr=newDataRelation("relation",dtParent.Columns["id"],dtChild.Columns["sayId"]);ds.Relations.Add(dr);returnds;}}

时间: 2024-09-22 08:14:51

Datalist嵌套Datalist实现显示类似说说评论的效果的相关文章

datalist 嵌套 datalist

问题描述 datalist嵌套实现二级菜单点击主菜单缩放里面加了JS但是不能区别ID测试网址:www.eexsw.com/1/cs

DataList嵌套Datalist如何跳转下一页

问题描述 如题 解决方案 解决方案二:http://blog.csdn.net/gaohaidong/archive/2006/01/07/572841.aspx解决方案三:自定义的分页,自己获取第二页的数据,将数据绑定到控件上.如果是获取的所有数据,要使用服务器分页控件(datapager)来完成分页.解决方案四:内部的datalist控件,要使用itemcommand来完成页数传递,重新绑定数据源.解决方案五:itemcommand事件里面写分页

在ASP.NET 2.0中操作数据之二十九:用DataList和Repeater来显示数据_自学过程

导言 在之前的28篇教程的例子里,如果我们需要显示某个数据源的多条记录,我们使用GridView .GridView 的一行表示数据源的一条记录,列表示一个字段.虽然GridView 用来显示数据,分页,排序,编辑,删除非常的方便,但是有点臃肿.而且GridView 结构的标记是固定的-它包含一个带有<tr>和<td>的HTML <table>标记. 为了在显示多条记录时,有更好的自定义功能,ASP.NET 2.0提供了DataList 和Repeater (ASP.N

DataList嵌套幻灯片问题!!!!!!!!!!!

问题描述 各位专家:小弟不才,有个问题想了很久也不知如何解决.小弟想在datalist控件里套一个幻灯片代码,也就是datalist里的每项都有一个幻灯片.幻灯片的代码如下:[code=JScript]<scripttype="text/javascript">imgUrl1="images/01.jpg";imgtext1="蔬菜广告创意01"imgLink1=escape("http://www.ijavascript.

datalist嵌套外层大类反复出现

问题描述 datalist嵌套外层大类反复出现 我想要的效果是一门课程里面有很多微课,这门课程只出现一次,但是用了datalist后,该课程名称多次出现,有什么办法可以让课程名会出现一次吗? 前台代码: <asp:DataList ID="dlFileType" RepeatColumns="1" runat="server" OnItemDataBound="dlFileType_ItemDataBound">

实现Reapter 嵌套 DataList

问题描述 请问老师,能实现实现Reapter嵌套DataList吗?我在后台绑定datalist的时候,提示"未将对象引用设置到对象的实例"我想应该是Reapter中的Datalist没收到,不知道,有没有办法可以解决这个问题? 解决方案 解决方案二:在线等,急,谢谢!解决方案三:大同小异,参考:解决方案四:<asp:repeaterid="Repeater1"Runat="server"><ItemTemplate>&l

datalist 控制每行显示数据条数的RepeatColumns属性 能否绑定数据 如何绑定数据

问题描述 datalist控制每行显示数据条数的RepeatColumns属性能否绑定数据如何绑定数据定义了一个函数Geti()返回inti<asp:DataListID="dlPictrue1"runat="server"RepeatColumns='<%#Eval(Convert.ToString(Geti()))%>'RepeatDirection="Horizontal">我这样绑定时会报错,请问RepeatCol

ScrollView嵌套ListView的显示不全及滑动问题

问题描述 ScrollView嵌套ListView的显示不全及滑动问题 20C 需求描述:要在一个页面显示比较多的数据,如:旅图详情页面需要显示旅图照片.评论列表等等内容:而且页面可以上下滑动:当个人动态列表滑动到底部时,可以加载更多的评论. 如图-1: 思路分析:因为要在一个页面显示较多的数据,且还有评论列表这样的模块,一下子想到使用ScrollView嵌套ListView,ScrollView可以上下滚动,ListView用于加载评论列表. 发现的问题:按照上面的思路,我做了尝试,发现两个问

WinForm实现类似QQ停靠,显示隐藏过程添加特效效果

原文:WinForm实现类似QQ停靠,显示隐藏过程添加特效效果 这可能是个老题长谈的问题了,只是在项目中会用到这个效果,所以今天做个记录.大家见了别喷我.在项目中的需求是这样的. 打开程序,在屏幕的右下角会显示一个窗体,一般情况下该窗体会隐藏停靠在右边,只露出很小部分,当鼠标移动到这个很小部分时,窗体全部显示,显示过程是从右边滑动到左边,当鼠标离开窗体时,窗体需要隐藏在右边,只露出很小部分,隐藏过程是从左边滑动到右边. 实现此类效果我碰到的连个难点是:1.如何判断鼠标离开了窗体?2.窗体显示隐藏