困扰半年之久asp.net mvc中ActionResult接受URL中文参数乱码问题?
/Info/%b8%db%b5%ba%ba%a3%d2%dd%be%fd%b4%c2%be%c6%b5%ea?id=1
上面网址是通过UrlEncode处理过的,处理过程如下:
string cnname=HttpUtility.UrlEncode(cnname, Encoding.GetEncoding("gb2312"));
以下接受url参数ActionResult
public ActionResult Info(string cnname)
{
Response.Write(cnname);
return new EmptyResult();
}
现在问题是Response.Write(cnname)输出来乱码?(注:这个Info(string cnname)中的cnname在asp.net mvc中是自动解码的。)
环境:vs2008 asp.net mvc2.0 网站编码:gb2312
问题补充 2010-12-06 16:02
好象是Routing那里获取就乱码了.
------解决方案--------------------估计是gb2312encode,然后utf8decode了。
------解决方案--------------------Config中设置一下字符类型 然后在代码中看看行不行