带有Eval()的NavigateUrl的HyperLink。 哪里出错了?

首先,我在Page_Load()代码隐藏中更改了HyperLink.NavigateUrl

但在我决定使用Eval()方法进行设计之后。

 <asp:HyperLink runat="server" NavigateUrl='' Text="Refuse" /> 

要么

 <asp:HyperLink ID="urlRefuse" runat="server" NavigateUrl='' Text="Refuse" /> 

其中idtype – 来自Request变量。

但它不起作用。 仅显示原始文本“拒绝”。 我的错误在哪里? 提前致谢。

这很有效

 NavigateUrl='<%# Eval("type","~/Refuse.aspx?type={0}") %>' 

这对我有用

 NavigateUrl='<%# String.Format("{0}.aspx?ID={1}", DataBinder.Eval(Container.DataItem, "Category"), DataBinder.Eval(Container.DataItem, "Post_ID")) %>' 

在浏览器中尝试使用ViewSource,在href中向客户端呈现什么? 这是你的期望吗? 如果您尝试使用请求集合中的变量而不能使用Eval,则需要使用Request查询字符串参数。

  

试试这个:

 HttpUtility.UrlEncode(Eval("type") 

试试这个:

 Accept 

试试这个对我有用:

 Eval("type").ToString()