猿问

在asp.net路径中使用波浪号(〜)

我正在使用asp.net应用程序,以下链接在IE中有效,但在FF中不可用。


<a href="~/BusinessOrderInfo/page.aspx" >

波浪号不是只能在asp.net服务器控件中使用的东西。它将被实际路径替换的地方?


是否可以在锚标记中使用波浪号?如果是这样,那意味着什么?


当我在根目录时,链接有效


www.myserver.com/default.aspx, click the link, ok!


www.myserver.com/otherpart/default.aspx, click the link, not ok!

ASP.NET生成的链接是:


www.myserver.com/otherpart/~BusinessOrderInfo/page.aspx

这是设计使然吗?


九州编程
浏览 576回答 3
3回答

GCT1015

您是正确的,它仅在服务器控件中有效。您有以下基本选项:更改为HyperLink作为Web控件运行:<asp:HyperLink NavigateUrl="~/BusinessOrderInfo/page.aspx" Text="Whatever" runat="server" />或者,在服务器端将锚作为HTML控件运行:<a href="~/BusinessOrderInfo/page.aspx" runat="server" >或者,使用Page.ResolveUrl:<a href="<%= Page.ResolveUrl("~/BusinessOrderInfo/page.aspx") %>">...</a>
随时随地看视频慕课网APP
我要回答