【问题标题】:How to check if the request URI have got any parameters如何检查请求 URI 是否有任何参数
【发布时间】:2011-07-27 13:55:18
【问题描述】:

我在 .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

我需要返回“是”。我可以做吗?

【问题讨论】:

    标签: c# .net query-string


    【解决方案1】:

    您还必须允许 Request.QueryStringnull(无参数)。

    返回string:

    return Request.QueryString != null && Request.QueryString.Count > 0 ? "YES" : "NO";
    

    返回bool:

    return Request.QueryString != null && Request.QueryString.Count > 0;
    

    【讨论】:

      【解决方案2】:

      自从我使用这些工具以来已经有一段时间了,但我相信以下内容应该适合您的需求:

      解决方案:

      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 上找到更多信息。

      【讨论】:

      • 但是 Request.QueryString== null 表示查询字符串不包含参数?
      • Fixed sorry :) 这只会检查是否存在任何参数并输出“YES”,否则输出“NO”。希望这会有所帮助:)
      • @Rionmonster Request.QueryString == null 会在您的代码示例中引发异常。见我上面的回答。
      • @Chris - 我最初有那个。正如我提到的,我不确定是否有必要
      • @Rionmonster,这是必要的,因为Request.QueryString 可以是null。您对内联解决方案的更新仍然是错误的:Request.QueryString.Count>0 && Request.QueryString != null 需要先检查null,例如Request.QueryString != null && Request.QueryString.Count>0
      【解决方案3】:

      试试这个方法,如果请求的页面定义了querystirng参数则返回true,否则返回false

      if (Request.QueryString.HasKeys())
      {
          Response.Write("The requested page URI has parameters");
      }
      

      【讨论】:

        猜你喜欢
        • 2016-12-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-06-25
        • 1970-01-01
        • 2015-12-05
        相关资源
        最近更新 更多