知道用URL传递中文参数会出问题,得:用Server.UrlEncode()对中文字符串进行编码然后用Server.UrlDecode()进行解码
可是为什么我不用这两个方法传递得到的中文也没有问题呢?Response.Redirect("aabb.aspx?aa=哈啊哈");我的web.config是这样设置的:<?xml version="1.0" encoding="utf-8"?><!--  全球化          此节设置应用程序的全球化设置。    -->
    <globalization requestEncoding="gb2312" responseEncoding="gb2312"/>
既然现在没有问题,不知道以后会不会出现问题呢?那么用不用也进行编码和解码呢?

解决方案 »

  1.   

    改变<globalization requestEncoding="gb2312" responseEncoding="gb2312"/>
    的值与用Server.UrlEncode()对中文字符串进行编码然后用Server.UrlDecode()进行解码
    的效果是等效的.以后也不会出问题.用其中的一种方法就可以了.
      

  2.   

    那么就是说如果web.config的设置是:<globalization requestEncoding="utf-8" responseEncoding="utf-8"/>在传递中文 参数的时候就必须进行编码/解码了?
      

  3.   

    那么就是说如果web.config的设置是:<globalization requestEncoding="utf-8" responseEncoding="utf-8"/>在传递中文 参数的时候就必须进行编码/解码了?
    是的.
    不过我还有一个问题就是传一个字符串"2004-12-10 13:20:00"这个时候13那个位置的字符会出现乱码,这是怎么回事啊!
    空格会被编码为:%20