如果我在页面中说http://myweb/folder/obtain.aspx?thevalue=3
,我如何确定网址中是否包含obtain.aspx?thevalue
?我只需要检查用户是否登陆此特定页面。
PS:我想我真的不需要检查?thevalue
而只需检查obtain.aspx
答案 0 :(得分:9)
试试这个:
//gets the current url
string currentUrl = Request.Url.AbsoluteUri;
//check the url to see if it contains your value
if (currentUrl.ToLower().Contains("obtain.aspx?thevalue"))
//do something
答案 1 :(得分:2)
这将为您提供确切的文件名(obtain.aspx) Request.Url.Segments [1]
答案 2 :(得分:1)
Request.Url
应该包含您需要的一切。在您的情况下,您可以使用类似
if( Request.Url.PathAndQuery.IndexOf("obtain.aspx") >= 0 )...
答案 3 :(得分:1)
我建议使用Request.Url。要获取确切的文件名,您可以尝试使用System.IO.Path
var aspxFile = System.IO.Path.GetFileName(Request.Url.LocalPath);
var landed = aspxFile.Equals("obtain.aspx", StringComparison.InvariantCultureIgnoreCase);
if(landed) { // your code }
答案 4 :(得分:0)
Request.Url
将返回用户请求的确切Uri。
如果你想专门检查thevalue
,你可能最好在Request.QueryString
答案 5 :(得分:0)
它很丑,但你可以尝试
if (HttpContext.Current.HttpRequest.Url.AbsolutePath.Contains("/obtain.aspx"))
// then do something