苏飞论坛

标题: 将URL的参数部分转为NameValueCollection集合 [打印本页]

作者: 站长苏飞    时间: 2014-9-10 08:25
标题: 将URL的参数部分转为NameValueCollection集合
导读部分

【HttpHelper万能框架】教程目录贴  http://www.sufeinet.com/thread-9989-1-1.html


教程部分


我们在请求数据时,有时候会接收到这样的返回值
[C#] 纯文本查看 复制代码
 string parameters = "a=123456&b=456789&c=456456";


就是使用&号分开的参数列表。但是呢,这个是字符串类型的。我们怎么样才能方便的转成对象或者是集合呢。

因为再次请求时往往需要带上其中的一个或者是两个,也有可能是要修改其中的一个Key的值。

在此背景下我在Htttphelper万能框架中加入了这样一个集合NameValueCollection  就相当于Key Value集合。

大家一起来看看实现代码吧。
[C#] 纯文本查看 复制代码
            string parameters = "a=123456&b=456789&c=456456";
            //得到一个参数集合
            NameValueCollection list = HttpHelper.GetNameValueCollection(parameters);

            string a = list["a"];
            string b = list["b"];
            string c = list["c"];

            Response.Write(string.Format("a={0}<br/>b={1}<br/>c={2}", a, b, c));


运行结果如下
[C#] 纯文本查看 复制代码
a=123456
b=456789
c=456456


怎么样,如果要修改也很简单
[C#] 纯文本查看 复制代码

            string parameters = "a=123456&b=456789&c=456456";
            //得到一个参数集合
            NameValueCollection list = HttpHelper.GetNameValueCollection(parameters);


            string a = list["a"];
            string b = list["b"];
            string c = list["c"];

            Response.Write(string.Format("a={0}<br/>b={1}<br/>c={2}", a, b, c));

            list["a"] = list["a"] + "修改过我";

            list["c"] = list["c"] + "修改过我";
             a = list["a"];
             b = list["b"];
             c = list["c"];

             Response.Write(string.Format("<br/><br/>a={0}<br/>b={1}<br/>c={2}", a, b, c));


运行结果
[C#] 纯文本查看 复制代码
a=123456
b=456789
c=456456

a=123456修改过我
b=456789
c=456456修改过我


作者: ching126    时间: 2014-9-12 13:44
强烈支持楼主ing……
作者: huanghua1234    时间: 2014-10-17 09:55
受教了学习中……
作者: leslieay    时间: 2015-10-26 15:51
强烈支持楼主ing……
作者: 杨威利    时间: 2020-1-27 16:56
能不能再转回字串呢




欢迎光临 苏飞论坛 (http://www.sufeinet.com/) Powered by Discuz! X3.4