2009-09-25 19 views
1

我知道使用波形符号表示网站根目录的符号。 下面的链接是名为“MDWelcome”的虚拟目录的一部分,虽然下面的代码“有效”,但我如何在下面的HyperLink3中删除“硬编码”域名,以便它将链接到“当前的MDS虚拟目录服务器“(不管它是什么)。如何在同一台服务器上制作相对于不同虚拟目录的URL

<li><asp:HyperLink ID="HyperLink3" runat="server" NavigateUrl="http://www.mortgagedataweb.com/MDS/login.asp?default.asp">Subscriber Login</asp:HyperLink></li> 
<li><asp:HyperLink ID="HyperLink4" runat="server" NavigateUrl="~/faq.aspx">FAQ</asp:HyperLink></li> 

p.s.我们只是“虚拟化”了这台物理网络服务器,而我试图从新的虚拟机上测试网络,并且这个链接不断让我回到真正的物理机器。

回答

1

使用绝对路径,如下所示:

<li><asp:HyperLink ID="HyperLink3" runat="server" NavigateUrl="/MDS/login.asp?default.asp">Subscriber Login</asp:HyperLink></li> 

绝对路径是很好的做法,因为当你把你的网站为不同的环境或服务器,他们将工作。

+0

谢谢Aaron。我应该知道这一点。 – 2009-09-25 18:20:45

+3

我看到这个工作,但为什么这叫绝对路径?似乎包含domainname.com文件会使它成为绝对路径,这就是“相对路径”? – 2009-09-25 18:42:53

+2

绝对路径从站点的根文件夹开始,而相对路径从页面的文件夹开始。 – 2009-09-25 21:02:46

1

我建议你这样做,而不是:

<li><asp:HyperLink ID="HyperLink3" runat="server" NavigateUrl="~/MDS/login.asp?default.asp">Subscriber Login</asp:HyperLink></li> 

如果此代码是一个用户控件里面可能找不到虚拟根正确离不开它。

相关问题