我想添加代码来检查用户是否在母版页_load事件中的default.aspx上。
如果请求的页面是default.aspx?
,如何检查母版页答案 0 :(得分:5)
您应该检查Request.Url.LocalPath
哪个应该是“/default.aspx”或“/".
if (string.Compare(Request.Url.LocalPath,"/default.aspx") == 0 || string.Compare(Request.Url.LocalPath,"/") == 0)
{
// your code
}
答案 1 :(得分:3)
您应该能够在Master中测试Page属性的类型。例如:
public partial class DefaultMaster : System.Web.UI.MasterPage
{
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
if(this.Page is DefaultPage) {
...
}
}
}
答案 2 :(得分:2)
你可能正在寻找
Request.Url
string currentUrl = HttpContext.Current.Request.Url.LocalPath;
if(currentUrl.EndsWith("default.aspx") || currentUrl.EndsWith("/"))
{
DoSomething();
}
答案 3 :(得分:0)
我会用
if (Request.AppRelativeCurrentExecutionFilePath == "~/"
|| string.Equals(Request.AppRelativeCurrentExecutionFilePath, "~/default.aspx", StringComparison.CurrentCultureIgnoreCase))
{
// ....
}
Request.AppRelativeCurrentExecutionFilePath 将忽略您的localhost,本地主机文件映射或虚拟目录名称,并返回相对于您的网站的文件路径,而 Request.Url.LocalPath 仍然包括虚拟目录。