asp.net how to check if the user is on a particular page?
i want to add code to check if a user is on default.aspx in the master page _load event.
how can i check in the master page i开发者_StackOverflow社区f the page being requested is default.aspx?
You should check Request.Url.LocalPath which should either be "/default.aspx" or "/".
if (string.Compare(Request.Url.LocalPath,"/default.aspx") == 0 || string.Compare(Request.Url.LocalPath,"/") == 0)
{
// your code
}
You should be able to test type of Page property in Master. eg:
public partial class DefaultMaster : System.Web.UI.MasterPage
{
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
if(this.Page is DefaultPage) {
...
}
}
}
You're probably looking for
Request.Url
string currentUrl = HttpContext.Current.Request.Url.LocalPath;
if(currentUrl.EndsWith("default.aspx") || currentUrl.EndsWith("/"))
{
DoSomething();
}
I'll use
if (Request.AppRelativeCurrentExecutionFilePath == "~/"
|| string.Equals(Request.AppRelativeCurrentExecutionFilePath, "~/default.aspx", StringComparison.CurrentCultureIgnoreCase))
{
// ....
}
Request.AppRelativeCurrentExecutionFilePath will ignore your localhost, local host file mapping, or virtual directory name and return the file path relative to your web site, while Request.Url.LocalPath still includes virtual directory.
加载中,请稍侯......
精彩评论