Below is an example using a repeater with some bound elements.
<div class="section">
<asp:repeater id="Repeater1" runat="server" datasourceid="LinkDataSource" xmlns:asp="#unknown">
<HeaderTemplate>
<div class="section-caption">
<%= Caption %>
</div>
<div class="section-content">
<ul>
</HeaderTemplate>
<itemtemplate>
<li><a href="<%# Eval(" url=") %>">
<%# Eval("LinkName") %>
</a>
<p>
<%# Eval("Comment") %>
</p>
</li>
</itemtemplate>
<footertemplate>
</footertemplate></ul> </div>
</asp:repeater>
</div>
<asp:objectdatasource id="LinkDataSource" runat="server" selectmethod="GetLinks" xmlns:asp="#unknown">
TypeName="LinkService">
<SelectParameters>
<asp:parameter defaultvalue="MAIN" name="Context" type="String" />
</SelectParameters>
</asp:objectdatasource>