日期:2014-05-17  浏览次数:20561 次

关于传值里面有加号的问题???????????
string a = "aaaaaaaaaaaaa dfdf 9 + 76 6 d";
  Response.Redirect("Default2.aspx?name=" +a);



接受:
string a= Request.QueryString["name"].ToString();
  Response.Write(a);

结果为:aaaaaaaaaaaaa dfdf 9 76 6 d 

里面的+号没有了。怎么回事啊?

------解决方案--------------------
先编码,+ 为特殊符号

C# code

string a = Server.Encode("aaaaaaaaaaaaa   dfdf     9     +   76   6   d"); 
Response.Redirect("Default2.aspx?name="   +a);

------解决方案--------------------
再用UrlDecode解码


UrlDecode(Request.QueryString["name"].ToString())
------解决方案--------------------
这样可以:
string a = "aaaaaaaaaaaaa dfdf 9 + 76 6 d";
Response.Redirect("Other.aspx?name=" +Server.UrlEncode( a));
接收:
this.Response.Write( Request.QueryString["name"].ToString());

------解决方案--------------------
UrlDecode()//解码
UrlEncode()//编码