我想使用asp.net创建一个网页,用户可以在其中查看其他人的帖子并对其进行评论(如Facebook或Twitter)。我无法找到适当的控件来查看数据库中的帖子,并允许对它们进行评论并喜欢它们。我搜索了网络,但没有关于这个主题的足够信息。
我想我应该使用ListView
,DataList
或GridView
。但是,自定义此类控件有点受限,我无法弄清楚如何在这些控件中添加注释和类似功能。
如何在这些控件中添加注释和相似功能?或者,是否有更好的控制我可以用于此目的?
我尝试使用ListView,但我无法添加注释区域,这是我的代码:
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT [title] FROM [products]">
</asp:SqlDataSource>
<asp:Panel ID="Panel1" runat="server" HorizontalAlign="Center">
<asp:ListView ID="ListView2" runat="server" DataSourceID="SqlDataSource1">
<AlternatingItemTemplate>
<span style="background-color: #FAFAD2; color: #284775;">title:
<asp:Label ID="titleLabel" runat="server" Text='<%# Eval("title") %>' />
<br />
<br />
</span>
</AlternatingItemTemplate>
<EditItemTemplate>
<span style="background-color: #FFCC66; color: #000080;">title:
<asp:TextBox ID="titleTextBox" runat="server" Text='<%# Bind("title") %>' />
<br />
<asp:Button ID="UpdateButton" runat="server" CommandName="Update" Text="Update" />
<asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="Cancel" />
<br />
<br />
</span>
</EditItemTemplate>
<EmptyDataTemplate>
<span>No data was returned.</span>
</EmptyDataTemplate>
<InsertItemTemplate>
<span style="">title:
<asp:TextBox ID="titleTextBox" runat="server" Text='<%# Bind("title") %>' />
<br />
<asp:Button ID="InsertButton" runat="server" CommandName="Insert" Text="Insert" />
<asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="Clear" />
<br />
<br />
</span>
</InsertItemTemplate>
<ItemTemplate>
<span style="background-color: #FFFBD6; color: #333333;">title:
<asp:Label ID="titleLabel" runat="server" Text='<%# Eval("title") %>' />
<br />
<br />
</span>
</ItemTemplate>
<LayoutTemplate>
<div id="itemPlaceholderContainer" runat="server" style="font-family: Verdana, Arial, Helvetica, sans-serif;">
<span runat="server" id="itemPlaceholder" />
</div>
<div style="text-align: center; background-color: #FFCC66; font-family: Verdana, Arial, Helvetica, sans-serif; color: #333333;">
</div>
</LayoutTemplate>
<SelectedItemTemplate>
<span style="background-color: #FFCC66; font-weight: bold; color: #000080;">title:
<asp:Label ID="titleLabel" runat="server" Text='<%# Eval("title") %>' />
<br />
<br />
</span>
</SelectedItemTemplate>
</asp:ListView>
</asp:Panel>
编辑:这是我尝试使用转发器的另一种方法:
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT * FROM [products]">
</asp:SqlDataSource>
<asp:Panel ID="Panel1" runat="server" HorizontalAlign="Center">
<asp:Repeater ID="rptEmployees" runat="server" DataSourceID="SqlDataSource1">
<HeaderTemplate>
<div id="divEmployees">
</HeaderTemplate>
<ItemTemplate>
<div class="detail">
<div>Name: <strong> <%# Eval("title") %></strong></div>
<div>Address: <strong><%# Eval("price") %></strong></div>
</div>
</ItemTemplate>
<AlternatingItemTemplate>
<div class="detail">
<div>Name: <strong><%# Eval("title") %></strong></div>
<div>Address: <strong><%# Eval("price") %></strong></div>
</div>
</AlternatingItemTemplate>
<FooterTemplate>
</div>
</FooterTemplate>
</asp:Repeater>
</asp:Panel>
我找到了一个网站,解释了如何使用转发器为某些帖子添加评论,可在此处查看http://dotprogramming.blogspot.com/2013/07/how-to-make-comment-box-in-aspnet.html
但是,我认为这说明了如何在一篇文章中添加多条评论。 我希望有多个帖子,每个帖子可以有多个评论,我怎样才能实现呢?
感谢任何帮助。
感谢。
答案 0 :(得分:0)
经过一些搜索后,我发现通过使用嵌套的Repeaters
可以实现,一个将代表帖子本身,嵌套的一个代表帖子的评论。
要将Repeaters
与评论结合使用,本文非常有用,
http://www.c-sharpcorner.com/UploadFile/5089e0/how-to-use-repeater-control-in-Asp-Net/