【发布时间】:2014-01-02 14:56:02
【问题描述】:
有谁知道下面两行代码有什么问题吗?在这两种情况下,当我在浏览器中查看锚链接时,都没有 href:
<asp:HyperLink runat="server" NavigateUrl='<%# Eval(Request.QueryString["conferenceId"], "~/Cms/schedule-edit.aspx?conferenceId={0}&type=workshopStream") %>' Text="Create Workshop Stream"></asp:HyperLink>
<asp:HyperLink runat="server" NavigateUrl='<%# String.Format("~/Cms/schedule-edit.aspx?conferenceId={0}&type=scheduleItem", Request.QueryString["conferenceId"]) %>' Text="Create Schedule Item"></asp:HyperLink>
当我将它放入 Listview 的 ItemTemplate 时,这个完全相同的代码似乎可以正常工作。但在 aspx 文件中单独使用时不起作用。
这有什么问题?
另外,如果我用硬编码字符串 ~/cms/schedule-edit.aspx?conferenceId=2&type=stuff 替换 navigateUrl,则会显示 href。当我在那里有 Eval 或 String.Format 时,它就不起作用了。
【问题讨论】: