正确的webform网址用于导航

时间:2014-07-19 11:37:40

标签: c# html asp.net webforms

我的template.master文件中的导航出现问题。

我有一个菜单,其中包含指向我网站内各个页面的链接。 对于带有template.master的default.aspx,指向about.aspx的链接可以正常工作,因为所有文件都在同一个文件夹中。到现在为止还挺好。 HREF = “about.aspx”

如果我尝试为/categories/browse.aspx中的文件使用相同的template.master memu链接不再有效,因为它们指向/ categories /的当前文件夹 有没有办法编写href以便它始终有效。我认为绝对引用可能会像这样工作。 HREF = “/ about.aspx”

这似乎适用于实时网站域名运行本地它打破了     (/about.aspx)应该成为url     (/ast_web/about.aspx)

我似乎有以下选项

  1. 开发时从路径中删除本地ast_web(projectname)。这可能吗?
  2. 使用函数动态创建所有网址。
  3. 使用我不知道的某种形式的寻址。做什么〜/做什么?
  4. 在子文件夹中为webforms使用单独的template.master。

1 个答案:

答案 0 :(得分:0)

由于您提到了href属性,我假设您在菜单中使用了纯a标记作为链接。如ASP.NET Web Project Paths MSDN文章中所述,您可以使用~作为Web应用程序根运算符。

此运算符可用于Hyperlink等服务器控件。只需将NavigateUrl设置为等于~/about.aspx即可解决您的问题。并且Hyperlink控件仍然会呈现相同的a标记,因此我发现HTML标记方面没有任何问题。