从代码隐藏中使用RouteUrl NavigateUrl

时间:2016-04-23 04:04:09

标签: c# asp.net webforms url-routing

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() + " %>";
    }
}

问题是我最终得到的是这个网址

http://localhost:49333/Video/skate/%3C%$RouteUrl:sport=skate,category=flat,id=5716c22e89f9d719bc1b2f6f%20%%3E.

我可能误解了这一点,但无法找到相关信息。

1 个答案:

答案 0 :(得分:0)

好的,所以这个答案已经到处都是,但我没有意识到它适用于我

NavigateUrl=<%# Eval("id", "~/webpages/VideoEmbed.aspx?id={0}")