5

我正在使用中继器控件呈现数据。假设数据源中有 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>

我需要修改什么

<asp:HyperLink ID="lnkDetails" runat="server" NavigateUrl="~/Details.aspx?ID=">See Details</asp:HyperLink>

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

4

1 回答 1

17

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

……但事实并非如此!

最优雅的方式应该是:

<asp:HyperLink ID="lnkDetails" runat="server" NavigateUrl='<%# Eval("ProductID", "~/Details.aspx?ID={0}") %>'>See Details</asp:HyperLink>
于 2009-02-10T17:43:20.843 回答