【问题标题】:How to detect a querystring like `?info`如何检测像`?info`这样的查询字符串
【发布时间】:2012-09-18 08:02:45
【问题描述】:

我看到一个使用page.aspx?infopage.aspx?download 的网页。我试过了,但它不起作用:

if (Request.QueryString["info"] != null)
{
    Label1.Text = "info";
}

是否有办法检查用户是否在 url 后输入了?info

【问题讨论】:

  • 您可能需要尝试一些东西而不是 Request.QueryString 才能看到它。我不记得该属性,但有一个用于获取请求的原始 URL,您可以检查信息或自行下载。

标签: c# asp.net url query-string


【解决方案1】:

如果您不指定参数名称,则将其视为null

它的值是info

所以你必须检查它如下:

if(Request.QueryString[null]=="info")
{
    //Take some action
}

【讨论】:

    【解决方案2】:

    ?info 将导致空值,因此您的空值检查将失败。您想遍历 QueryString 集合的 Keys 以查看是否存在。

    示例可在 MSDN -HttpRequest.QueryString 获得,您需要使用 QueryString.AllKeys 和某种循环/LINQ 查询来检查您的密钥是否存在:

    String[] arr1 = Request.QueryString.AllKeys; 
    for (loop1 = 0; loop1 < arr1.Length; loop1++) 
    {...
    }
    

    【讨论】:

      猜你喜欢
      • 2017-04-30
      • 1970-01-01
      • 1970-01-01
      • 2014-08-01
      • 1970-01-01
      • 2011-06-16
      • 1970-01-01
      • 1970-01-01
      • 2021-01-15
      相关资源
      最近更新 更多