我在.NET上使用C#,在URI请求后调用。我需要检查这个URI是否包含一些参数。
例如:
http://www.website.com/page.aspx?ID=9 // must return YES
http://www.website.com/page.aspx?ID=9&Page=2 // must return YES
http://www.website.com/page.aspx // must return NO
有可能吗?当然我无法知道URI中每个参数的名称,因此对于随机查询字符串如:
http://www.website.com/page.aspx?RandomParameter=1
我需要返回YES。我可以做吗?
答案 0 :(得分:7)
您必须同时允许Request.QueryString
为null
(无参数)。
返回string
:
return Request.QueryString != null && Request.QueryString.Count > 0 ? "YES" : "NO";
返回bool
:
return Request.QueryString != null && Request.QueryString.Count > 0;
答案 1 :(得分:5)
自从我使用这些产品已经有一段时间了,但我相信以下内容应该符合您的需求:
<强>解决方案:强>
if(Request.QueryString != null && Request.QueryString.Count > 0)
{
return "YES";
}
else
{
return "NO";
}
内联解决方案(如果您只需要这样做):
return (Request.QueryString != null && Request.QueryString.Count > 0) ? "YES":"NO";
您可以在Request.QueryString here上找到更多信息。
答案 2 :(得分:2)
尝试此方法,如果请求的页面定义了任何querystirng参数,则返回true,否则返回false
if (Request.QueryString.HasKeys())
{
Response.Write("The requested page URI has parameters");
}