首页新闻找找看学习计划

怎么把键值对转换为参数字符串?

0
[已解决问题] 解决于 2012-06-28 15:10

如我的键值对如下:

var postData = new List<KeyValuePair<string, string>>();
postData.Add(new KeyValuePair<string, string>("a", "1"));
postData.Add(new KeyValuePair<string, string>("b", "2"));
postData.Add(new KeyValuePair<string, string>("c", "3"));

如何方便地转换为:

a=1&b=2&c=3
草根程序猿的主页 草根程序猿 | 初学一级 | 园豆:129
提问于:2012-06-28 14:23
< >
分享
最佳答案
0

用LINQ实现:

string.Join("&", postData.Select(d => d.Key + "=" + d.Value));
奖励园豆:5
dudu | 高人七级 |园豆:39411 | 2012-06-28 14:58
其他回答(3)
0

你可以循环输出,拼接字符串

鸡汤哥 | 园豆:210 (菜鸟二级) | 2012-06-28 14:27
0
List<string> list = new List<string>();

foreach(var item in postData)

 {

list.Add(string.Format("{0}={1}", item.Key, item.Value));

}

string result = string.Join(list.ToArray(), "&");

当然,你也可以使用LINQ,代码会简单点。

无之无 | 园豆:5085 (大侠五级) | 2012-06-28 14:40
0

是二楼的代码有点问题,当value中出现{或}时就会出错,稍微改一下不用string.Format就可以了

artwl | 园豆:16526 (专家六级) | 2012-06-28 15:04
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册