当前位置:编程学习 > C#/ASP.NET >>

关于.net中url参数中带&值时获取参数的方法?


url传参数时,如q=%E8%91%A1%E8%90%84%E9%85%92&1

我想获得参数q中的全部字符%E8%91%A1%E8%90%84%E9%85%92&1 ,

但现在我用Request.QueryString["q"]获取值时不会包含&1,它被认为是第二个参数,请问大家这个问题要怎么解决呢 ?
url .net --------------------编程问答-------------------- &
=>
%26 --------------------编程问答--------------------     string value = "q=%E8%91%A1%E8%90%84%E9%85%92&1";
    Response.Redirect("test.aspx?name=" + Server.UrlPathEncode(value)); --------------------编程问答-------------------- 已经转换了, 传入地址  葡萄酒%261,但还是取得葡萄酒

引用 1 楼 hjywyj 的回复:
&
=>
%26
--------------------编程问答-------------------- 直接Request.QueryString.ToString() --------------------编程问答-------------------- 直接  "葡萄酒&1".replace("&","andandand")

获取的时候再  "葡萄酒andandand1".replace("andandand","&"); --------------------编程问答-------------------- value = "葡萄酒&1";
url = "......?q=" + HttpUtility.UrlEncode(value);


你可以试试看url是什么?! --------------------编程问答--------------------
引用 楼主 mihu1235456 的回复:
url传参数时,如q=%E8%91%A1%E8%90%84%E9%85%92&1


这个url设计,是“不伦不类”的。你可以试试看规范的程序生成什么url参数。 --------------------编程问答-------------------- Request["1"] 如果为NULL,就不存在1 --------------------编程问答-------------------- 在跳转链接的时候 给参数 编码化,然后后台取值的时候 在返编码 --------------------编程问答--------------------
引用 2 楼 Chinajiyong 的回复:
    string value = "q=%E8%91%A1%E8%90%84%E9%85%92&1";
    Response.Redirect("test.aspx?name=" + Server.UrlPathEncode(value));


这个正解。
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,