不知大家在写asp.net程序的时候有没有遇到这样的问题,当你的页面内有一个文本框,而你需要提取文本框里面的输入内容并进行数据库操作时(比如把输入的内容加到数据库中),如果输入的内容是英文,完全没有问题,但当输入内容为中文的时候,就会发生无法提交的错误,或者可以提交,但是提交到数据库里面的内容已经变成了乱码。 这个时候可以检查一下web.config文件的设置是否有误,一般情况下应该是里面对输入输出的格式设置出现了问题,或者是根本就没有设定,这样就按照默认的只认英文,而对中文置之不理了(这个是我自己猜的,反正会出问题就是了-____-)。解决的办法是在<system.web></system.web>中加入对格式的限制。大家可以看下面的web.config文件的源代码: <?xml version="1.0" encoding="utf-8"?> <configuration> <system.web> <customErrors mode="Off"/> <compilation debug="true"/> <globalization requestEncoding="gb2312" responseEncoding="gb2312" /> </system.web> <appSettings> <add key="color" value="provider=microsoft.jet.oledb.4.0;data source=e:\aspx\practice\sy.mdb;"/> </appSettings> </configuration> 这里还有一种情况,如果你是用dw来做的代码,那么把第一行的编码设定改改或者删除再看看,因为dw会自做主张的设定一些东西,虽然有的时候很方便,但有的时候反而会添乱。 还有,如果没有设定什么web.comfig文件,那也会出这样的问题。 这个问题其实是我最近遇到的,一开始我以为是程序出现了错误,后来偶然的情况下发现用英文就没有问题……最后问题的解决还是在经典论坛。这里谢谢mmkk、chnama 和tzboy 。关于这个问题的讨论原贴大家可以 ---点击这里查看-- 。
|
请发表评论