我有一个按名称搜索产品的页面。在许多页面中,我使用产品代码。如果用户不知道产品代码,我让他到这个页面,按名称搜索,然后选择其中一个结果返回他来自的页面。
在按名称搜索的结果中,我设置了一个 HyperLinkField,它将重定向到某个页面,并带有产品代码的参数。
我的代码是这样的:
<asp:GridView ID="GridView1" Runat="server"
DataSource='<%# GetData(pName.Text) %>' AutoGenerateColumns="False">
<Columns>
<asp:BoundField DataField="Name">
<ItemStyle HorizontalAlign="Center"
VerticalAlign="Middle"></ItemStyle>
</asp:BoundField>
<asp:BoundField DataField="Code"></asp:BoundField>
<asp:ImageField ControlStyle-Width="150px" ControlStyle-Height="150px" DataImageUrlField="PictureURL" ></asp:ImageField>
<ASP:HYPERLINKFIELD text=">>" datanavigateurlfields="Code" datanavigateurlformatstring="priceUpdater.aspx?ProductCode={0}"></ASP:HYPERLINKFIELD>
</Columns>
</asp:GridView>
其中 GetData 是一个函数,它返回一个 Product 类型的对象,其中包含字段、名称、代码、图像等。
如您所见,HYPERLINKFIELD 中的此链接将重定向到一个名为 priceUpdater 的页面,其中包含产品代码的参数。
我希望这个页面是动态的。我试图像这样向搜索页面添加一个参数
<%string pageRequested = Page.Request.QueryString["SearchScreen"];%>
现在我尝试像这样使用 HYPERLINK:
<ASP:HYPERLINKFIELD text=">>" datanavigateurlfields="Code" datanavigateurlformatstring="<%=pageRequested%>.aspx?ProductCode={0}"></ASP:HYPERLINKFIELD>
但是链接所指的页面与所写的一样纯文本(http://mysite.com/%3C%=pageRequested% >.aspx?ProductCode=2450)
我怎样才能使这项工作?
谢谢!