Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用.Net 3.5在C#中检索查询字符串值_C#_Regex_Query String - Fatal编程技术网

使用.Net 3.5在C#中检索查询字符串值

使用.Net 3.5在C#中检索查询字符串值,c#,regex,query-string,C#,Regex,Query String,我正在处理一个C#项目,该项目将我限制在.NET3.5。我需要能够检索查询字符串中键的值,该查询字符串如下:http://www.test.com/file?id=1&search=search+text&other=stuff 如果不使用HttpUtility.ParseQueryString(似乎不在.net 3.5中),检索键值的最干净的方法是什么 旁注:我在谷歌上到处寻找,但只能找到利用上述内容的例子。有几种方法 用法:HttpContext.Current.Request[“此处请求名

我正在处理一个C#项目,该项目将我限制在.NET3.5。我需要能够检索查询字符串中键的值,该查询字符串如下:
http://www.test.com/file?id=1&search=search+text&other=stuff

如果不使用HttpUtility.ParseQueryString(似乎不在.net 3.5中),检索键值的最干净的方法是什么


旁注:我在谷歌上到处寻找,但只能找到利用上述内容的例子。

有几种方法

  • 用法:HttpContext.Current.Request[“此处请求名称”](例如“搜索”)
  • 使用:

    Dictionary<string,string> ParseQueryString(string url) {
      if(!url.Contains("?")) return new Dictionary<string,string>();
      var dict = new Dictionary<string,string>()
      if(url.Contains("&")) {
         var valuekeys = url.Split('?')[1].Split('&');
         foreach(var item in valuekeys) {
            dict.Add(item.Split('=')[0],item.Split('=')[1]);
         }
        return dict;
      } 
      var data = url.Split('?')[1].Split('=');
      dict.Add(data[0],data[1]);
      return dict;
    }
    
    字典解析查询字符串(字符串url){
    如果(!url.Contains(“?”)返回新字典();
    var dict=新字典()
    if(url.Contains(&)){
    var valuekeys=url.Split('?')[1].Split('&');
    foreach(valuekeys中的var项){
    dict.Add(item.Split('=')[0],item.Split('=')[1]);
    }
    返回命令;
    } 
    var data=url.Split('?')[1].Split('=');
    dict.Add(数据[0],数据[1]);
    返回命令;
    }
    
  • 希望这有帮助

    //Zerratar

    您可以使用:

    Request.QueryString("Key")
    

    HttpUtility.ParseQueryString()
    。是的,我也看过那个页面。但是,我已经将System.Web添加到项目中,它没有提供任何与HttpUtility相关的内容。这是用于Web应用程序的吗?我总是忘了说这是我正在开发的一个桌面应用程序。