使用Repeater控件构建动态链接

pad*_*adn 5 asp.net repeater .net-2.0

我正在使用Repeater控件渲染数据.假设数据源中有2个字段:productName和ProductID

在以下代码中:

<asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1">
<HeaderTemplate>
<ul>
</HeaderTemplate>
<ItemTemplate>
<li>
<%#Eval("productName")%> <br/>
<asp:HyperLink ID="lnkDetails" runat="server" NavigateUrl="~/Details.aspx?ID=">See Details</asp:HyperLink>
</li>
</ItemTemplate>
<FooterTemplate>
</ul>
</FooterTemplate>
Run Code Online (Sandbox Code Playgroud)

我需要修改什么

<asp:HyperLink ID="lnkDetails" runat="server" NavigateUrl="~/Details.aspx?ID=">See Details</asp:HyperLink>
Run Code Online (Sandbox Code Playgroud)

包含从链接NavigateUrl ="〜/ Details.aspx?ID ="的ProductID中检索到的值

Joh*_*sch 16

NavigateUrl="~/Details.aspx?ID=<%# Eval("productID") %>" 应该管用...

......但它没有!

最优雅的方式应该是:

<asp:HyperLink ID="lnkDetails" runat="server" NavigateUrl='<%# Eval("ProductID", "~/Details.aspx?ID={0}") %>'>See Details</asp:HyperLink>
Run Code Online (Sandbox Code Playgroud)