0

基本上,我有一个包含多行的“帖子”数据表。每行包含“ UserID ”、“ PostBody ”、“ PostDate ”、“ UploadedFileID ”等字段。

我想要实现的是一个“新闻”页面,用户可以在其中查看 DataTable 中的所有帖子。

因此,如果我有 5 行,我希望每一行都有一个 HTML 结构,例如:

<div id="post">
    <h3>User name (based on the UserID row)</h3>
    <div id="postBody">
        bla bla bla whatever the user posted
    </div>
    <a href="(link to the posted file)">
        <img src="something" />
    </a>
</div>

我在想,在 .aspx 文件中,在 PageLoad 事件中我必须进行一个 while 循环,例如:

while (there are posts in the posts table)
    write html;

如何添加 HTML 构建条件,更重要的是,分页?

谢谢,都铎王朝。

4

1 回答 1

0

您可以使用几个数据绑定控件之一并将您的 html 结构放入模板中。

参考:Asp.net DataBound 控件

像 Repeater 或 ListView 这样的应该给你你想要的。

<asp:ListView runat="server" ID="ListView1" 
  DataSourceID="PostsDataSource" >
  <ItemTemplate>
    <div id="post">
      <h3>User name (based on the UserID row)</h3>
      <div id="postBody">
        <asp:Label ID="LastNameLabel" runat="Server"
                   Text='<%#Eval("PostBody") %>' />
      </div>
      <a href="(link to the posted file)">
        <img src="something" />
      </a>
    </div>
  </ItemTemplate>
</asp:ListView>

后面的代码:

ListView1.DataSource =

使用数据绑定控件的优点是 asp.net 将管理分页和值绑定。

于 2013-06-13T09:16:22.410 回答