来自代码隐藏的 NavigateUrl 和 RouteUrl
NavigateUrl with RouteUrl from code-behind
在asp.net web forms
。我有一个带有超链接和隐藏字段的中继器。我正在尝试使用隐藏字段的值在转发器的数据绑定上设置 NavigateUrl
。
这是我得到的:
protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
HyperLink hyperLink = (HyperLink)e.Item.FindControl("HyperLink1");
HiddenField hf = (HiddenField)e.Item.FindControl("HiddenField1");
hyperLink.NavigateUrl = "<%$RouteUrl:id=" + hf.Value.ToString() + " %>";
}
}
问题是我最终得到的是这个 url
http://localhost:49333/Video/skate/%3C%$RouteUrl:sport=skate,category=flat,id=5716c22e89f9d719bc1b2f6f%20%%3E.
我可能误解了这一点,但找不到任何相关信息。
好的,这个答案已经在这里了,但我没有意识到它适用于我
NavigateUrl=<%# Eval("id", "~/webpages/VideoEmbed.aspx?id={0}")
在asp.net web forms
。我有一个带有超链接和隐藏字段的中继器。我正在尝试使用隐藏字段的值在转发器的数据绑定上设置 NavigateUrl
。
这是我得到的:
protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
HyperLink hyperLink = (HyperLink)e.Item.FindControl("HyperLink1");
HiddenField hf = (HiddenField)e.Item.FindControl("HiddenField1");
hyperLink.NavigateUrl = "<%$RouteUrl:id=" + hf.Value.ToString() + " %>";
}
}
问题是我最终得到的是这个 url
http://localhost:49333/Video/skate/%3C%$RouteUrl:sport=skate,category=flat,id=5716c22e89f9d719bc1b2f6f%20%%3E.
我可能误解了这一点,但找不到任何相关信息。
好的,这个答案已经在这里了,但我没有意识到它适用于我
NavigateUrl=<%# Eval("id", "~/webpages/VideoEmbed.aspx?id={0}")