带目录的相对URL和绝对URL

时间:2012-03-25 18:51:24

标签: asp.net url hyperlink relative absolute

我刚开始创建和发布网站,我遇到了绊脚石。

我有一个托管帐户,分配了3个不同的域名。每个域都映射到主目录的一部分。所以它是这样的:

My Site - 
           -Site1
           -Site2
           -Site3

但是我似乎无法使用在托管网站上本地工作的相同URL,反之亦然。这是我在链接中使用的代码示例:

<asp:MenuItem NavigateUrl="/Default.aspx" Text="Home"/>

这在上传到主机时工作正常,但在本地我收到错误:

HTTP错误404 - 未找到。

当我离开/

 <asp:MenuItem NavigateUrl="About.aspx" Text="About"/>

它会在本地工作,但我会在托管时收到错误:

  

无法找到资源:
  请求的网址:/Site1/Site1/About.aspx

我已经使用了〜,.. /,default.aspx等,它总会在一个上工作,但不会在另一个上工作。我确信我错过了一些简单的东西但却无法解决它。

1 个答案:

答案 0 :(得分:0)

试试这个

<asp:MenuItem NavigateUrl="/ProgectName/About.aspx" Text="About"/>

或者 ServerSide

Menu1.Items.Add(new MenuItem { NavigateUrl = Page.ResolveUrl("About.aspx"), Text = "About"});