Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/328.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
C# 是否有与PHP函数“parse#u str”等价的C语言?_C#_Php_Parsing - Fatal编程技术网

C# 是否有与PHP函数“parse#u str”等价的C语言?

C# 是否有与PHP函数“parse#u str”等价的C语言?,c#,php,parsing,C#,Php,Parsing,是否存在与PHP函数parse\u str等效的C 我找不到任何东西并编写了自己的函数,但是C#框架中有什么东西吗 public Dictionary<string, string> parse_str(string query) { Dictionary<string, string> data = new Dictionary<string, string>(); foreach(string set in query.Trim('?'

是否存在与
PHP
函数
parse\u str
等效的
C

我找不到任何东西并编写了自己的函数,但是
C#
框架中有什么东西吗

public Dictionary<string, string> parse_str(string query) {

    Dictionary<string, string> data = new Dictionary<string, string>();

    foreach(string set in query.Trim('?').Split('&'))
        data.Add(set.Split('=')[0], set.Split('=').Length < 2 ? "" : set.Split('=')[1]);

    return data;
}​​​​​​
公共字典解析(字符串查询){
字典数据=新字典();
foreach(在query.Trim('?').Split('&')中设置的字符串)
data.Add(set.Split('=')[0],set.Split('=')。长度<2?”:set.Split('=')[1]);
返回数据;
}​​​​​​

我认为您支持

如果您是从浏览器的查询字符串中获取它,您可以使用
Request.QueryString

您可以获得所有密钥的列表:
Request.QueryString.keys


获取一个键的值:
Request.QueryString[“KeyName”]

我知道。为什么PHP的手册比C#的更容易浏览和发现?谢谢谷歌是通用搜索工具中的C#手册/MS文档——你只需要知道搜索什么,这并不总是那么容易。它有助于添加一个
site:msdn.microsoft.com
子句,让您可以使用谷歌搜索术语不幸的是
NameValueCollection
没有
JavaScriptSerializer()。像
字典一样序列化
。将
NameValueCollection
转换为
Dictionary
的唯一方法似乎是一个for循环,它使我的
parse_str
函数更相关。用于web开发的C#Request.querystring
来检索它并将其传递到
HttpUtility.ParseQueryString()
。你能解释一下这是如何无关的吗?它涵盖了95%的用例,比任何替代方案都要好得多,尽管它的功能与所要求的不完全相同。对于一个站点来说,解析“自身”以外的页面的查询字符串是很少见的。你能查一下问题中提到的内容并解释一下你的答案的相关性吗?@iambriansreed C#不是php。你不可能总是为每件事找到一个精确的端口。你应该问的不是“什么样的C代码与这个PHP代码做的事情相同”,而是“我如何用C完成这个任务?”。如果答案恰好相同,那就这样吧。@Servy比我解释得更好地解释了我回答的原因。