C# 如何检查请求URI是否有任何参数
我在.NET上的C#上有我的类,在URI请求后调用。我需要检查这个URI是否包含一些参数 例如:C# 如何检查请求URI是否有任何参数,c#,.net,query-string,C#,.net,Query String,我在.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
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
我需要回复是的。我能做吗 我已经有一段时间没有使用这些工具了,但我相信下面的内容应该适合您的需要: 解决方案:
if(Request.QueryString != null && Request.QueryString.Count > 0)
{
return "YES";
}
else
{
return "NO";
}
return (Request.QueryString != null && Request.QueryString.Count > 0) ? "YES":"NO";
内联解决方案(如果您只需要这样做):
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上找到更多信息 您必须允许
请求。QueryString
也为null
(无参数)
要返回字符串
:
return Request.QueryString != null && Request.QueryString.Count > 0 ? "YES" : "NO";
要返回一个bool
:
return Request.QueryString != null && Request.QueryString.Count > 0;
尝试此方法,如果请求的页面定义了任何QueryStarng参数,那么它将返回true,否则将返回false
if (Request.QueryString.HasKeys())
{
Response.Write("The requested page URI has parameters");
}
但是Request.QueryString==null意味着QueryString不包含参数?修复了抱歉:)这将只检查是否存在任何参数,并将输出“是”,否则输出“否”。希望这有帮助:)@rionmoster
Request.QueryString==null
会在代码示例中引发异常。请看上面我的答案。@Chris-我最初就有这个。正如我提到的,我不确定它是否是necessary@Rionmonster,作为请求是必需的。QueryString可以是null
。您对内联解决方案的更新仍然错误:Request.QueryString.Count>0&&Request.QueryString!=null
需要先检查null
像Request.QueryString!=null&&Request.QueryString.Count>0