我已将我的标签存储在SQL Server数据库中, 表名:标签 COLUMNS
现在我想在aspx页面中创建一个如下所示的列表,从数据库创建。我已经完成了将数据集中的所有标记和tagURL保存在数据库中的工作。但我不知道如何从数据库创建动态HTML列表或asp.net列表。
我必须创建这样的列表:
<ul>
<li class="tag1"><a href="#">Lorem ipsum</a></li>
<li class="tag2"><a href="#">Dolor sit amet</a></li>
<li class="tag3"><a href="#">Consectetur adipiscing elit</a></li>
<li class="tag2"><a href="#">Proin </a></li>
<li class="tag4"><a href="#">Sagittis libero</a></li>
<li class="tag1"><a href="#">Aliquet augue</a></li>
<li class="tag1"><a href="#">Quisque dui lacus</a></li>
<li class="tag5"><a href="#">Consequat</a></li>
<li class="tag2"><a href="#">Dictum non</a></li>
<li class="tag1"><a href="#">Venenatis et tortor</a></li>
<li class="tag3"><a href="#">Suspendisse mauris</a></li>
<li class="tag4"><a href="#">In accumsan </a></li>
<li class="tag1"><a href="#">Egestas neque</a></li>
<li class="tag5"><a href="#">Mauris eget felis</a></li>
<li class="tag1"><a href="#">Suspendisse</a></li>
<li class="tag2"><a href="#">condimentum eleifend nulla</a></li>
</ul>
其中
> class="tag <random number from 1-5>"
答案 0 :(得分:1)
您可能希望使用类似asp.net转发器的东西。这是msdn库中的一个例子,当我写一个更合适的一个。
这是我对您的要求的理解。我不确定是否可以更好地处理随机数生成。
<asp:Repeater ID="Repeater1" runat="server">
<HeaderTemplate>
<ul>
</HeaderTemplate>
<ItemTemplate>
<li class="<%# String.format("tag{0}", GetRandom())%>"><a href="<%# Eval("TagUrl") %>"><%# Eval("TagName")%></a></li>
</ItemTemplate>
<FooterTemplate>
</ul>
</FooterTemplate>
</asp:Repeater>
背后的代码
Private _random As Random
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
_random = New Random
Dim dt As New DataTable
dt.Columns.Add("TagName")
dt.Columns.Add("TagUrl")
dt.Rows.Add("Test1", "TestUrl1")
dt.Rows.Add("Test2", "TestUrl2")
dt.Rows.Add("Test3", "TestUrl3")
dt.Rows.Add("Test4", "TestUrl4")
dt.Rows.Add("Test5", "TestUrl5")
Repeater1.DataSource = dt
Repeater1.DataBind()
End If
End Sub
Protected Function GetRandom() As Integer
Return _random.Next(1, 5)
End Function
答案 1 :(得分:0)
我也会使用转发器。但是还有两个选择: