C# 从嵌套母版页重定向使用实际应用程序文件夹而不是根目录构建url

C# 从嵌套母版页重定向使用实际应用程序文件夹而不是根目录构建url,c#,asp.net,redirect,master-pages,C#,Asp.net,Redirect,Master Pages,我有一个嵌套的母版页,用于网站的管理部分。当我从母版页重定向到登录页时,重定向构造了一个奇怪的url。“_hosting”是应用程序文件夹“applicationname”所在的实际文件夹。因此,与其这样: www.sitename.com/admin/login.aspx 我明白了: www.sitename.com/_hosting/applicationname/admin/login.aspx 我尝试使用“~/admin/login.aspx”重定向,删除“~”和“.”。但是没有任何

我有一个嵌套的母版页,用于网站的管理部分。当我从母版页重定向到登录页时,重定向构造了一个奇怪的url。“_hosting”是应用程序文件夹“applicationname”所在的实际文件夹。因此,与其这样:

www.sitename.com/admin/login.aspx
我明白了:

www.sitename.com/_hosting/applicationname/admin/login.aspx
我尝试使用“~/admin/login.aspx”重定向,删除“~”和“.”。但是没有任何效果。当应用程序在本地运行时,它不会这样做,而是正确重定向到:

http://localhost:63820/admin/login.aspx
我不明白这是什么原因。据我所知,它与嵌套母版页有关,但没有找到任何帮助我解决这个问题的方法

我的最后一个选择是删除路径中不需要的部分并以这种方式重定向,但我希望以正确的方式解决这个问题


谢谢

当您告知您的登录页面路径为

www.sitename.com/_hosting/applicationname/admin/login.aspx 
对于重定向登录页面,您使用了此路径,但可以将其简化为一个公共类,其中
取一个常量变量,在这里给出完整路径,并将该常量变量用作重定向路径

不确定我是否完全理解您所说的,但使用常量变量并不是最干净的方法。如果我必须自己构建路径的话,我正在试图找到一种通过编程获得“_hosting/applicationame/”的方法。依赖常数不是最佳选择。而且,即使这种方法也是最后一种选择,因为在nester母版页的情况下找到正确的重定向方法将是我想要的第一件事。