覆盖控件中的〜行为

时间:2010-01-16 19:08:50

标签: c# asp.net rewrite relative-path

快速背景故事:我正在制作我网站的“框架”版本,其主页与正常版本不同(一个适合iframing)。它由mysite.com/Framed/whatever访问,而不是mysite.com/whatever。这在IIS中重写为mysite.com/whatever?framed=true。这很好。

我遇到的问题是所有链接都是相对的,使用〜~/Server.aspx,它在普通网站中运行正常。我需要覆盖它而不是生成../Server.aspx(因为它“应该”)它产生../Framed/Server.aspxServer.aspx

目前,这意味着只要您点击某个链接,该页面就会返回到正常视图(mystite.com/whatever2),我希望它继续留在mysite.com/Framed/...

2 个答案:

答案 0 :(得分:0)

你真的不想要“../Server.aspx?framed=true”吗?这可能更容易实现

答案 1 :(得分:0)

〜解析为应用程序的根目录,因此您可以在主站点下创建一个名为“Framed”的框架版本的虚拟目录,因此“〜/”解析为“/ Framed /”。然后,您可以检查原始请求URI中是否存在“/ Framed /”,而不是使用查询字符串切换来选择主页面。