下载了Rainbow asp.net 2.0版本,在我的机器上安装调试(Window XP Profession + VS.net 2005 + Sqlserver 2000)。建立虚拟目录,运行,还算正常。后来,修改DesktopFooter.ascx文件,加入公司的地址、联系方式等信息(本页面下面的信息),再运行。霍霍,新加入的中文全是乱码,其余内容却是正常。
肯定是编码问题。查了一下web.config文件,找到编码设置项,原先是:<globalization culture="zh-CN" uiCulture="zh-CN" requestEncoding="Utf-8" responseEncoding="Utf-8" fileEncoding="Utf-8" />,改成:<globalization culture="zh-CN" uiCulture="zh-CN" requestEncoding="GB2312" responseEncoding="GB2312" fileEncoding="GB2312" />,再运行测试,OK。小Case了,感觉很有成就感。
事情就这么简单也就罢了,等发布网站,运行的时候,问题又来了。在虚拟目录下运行的好好的程序,等作为单独网站运行的时候,就不怎么听话了。我开始在本机上重新建立一个网站(当然Window XP Profession 自身并不支持,但是有别的方法可以建立,到网上一搜就知道方法了,而且还有热心人开发一些小程序,如EasyIIS),运行显示正常。但在增加内容时(内容全部保存在数据库),保存的东西中文全部乱码。:(。又傻眼了。再移到虚拟目录下(Window XP Profession 默认网站的虚拟目录),正常!更傻眼了。以为是建立的网站有问题,就直接上传到租用的ASP.net 2.0空间,结果---外甥打灯笼-照旧,显示没问题,保存中文乱码。后来把要存的内容在保存之前写入日志文件。查看日志文件,发现作为单独网站运行的时候,把数据从文本框取出来,保存之前就已经是乱码了。晕。
最后没办法,把web.config文件,编码设置项改回:<globalization culture="zh-CN" uiCulture="zh-CN" requestEncoding="Utf-8" responseEncoding="Utf-8" fileEncoding="Utf-8" />,保存问题解决了。.ascx文件中加入中文怎么办?没办法,只好使用资源文件来解决,不过这也是Rainbow Portal的做法--所有不是保存在数据库里要显示的文字,全部通过资源文件获取。
问题好像解决了,但我自身并没有真正搞明白编码问题,为什么在虚拟目录下可以,作为独立网站就不行了?慢慢学习吧。
肯定是编码问题。查了一下web.config文件,找到编码设置项,原先是:<globalization culture="zh-CN" uiCulture="zh-CN" requestEncoding="Utf-8" responseEncoding="Utf-8" fileEncoding="Utf-8" />,改成:<globalization culture="zh-CN" uiCulture="zh-CN" requestEncoding="GB2312" responseEncoding="GB2312" fileEncoding="GB2312" />,再运行测试,OK。小Case了,感觉很有成就感。
事情就这么简单也就罢了,等发布网站,运行的时候,问题又来了。在虚拟目录下运行的好好的程序,等作为单独网站运行的时候,就不怎么听话了。我开始在本机上重新建立一个网站(当然Window XP Profession 自身并不支持,但是有别的方法可以建立,到网上一搜就知道方法了,而且还有热心人开发一些小程序,如EasyIIS),运行显示正常。但在增加内容时(内容全部保存在数据库),保存的东西中文全部乱码。:(。又傻眼了。再移到虚拟目录下(Window XP Profession 默认网站的虚拟目录),正常!更傻眼了。以为是建立的网站有问题,就直接上传到租用的ASP.net 2.0空间,结果---外甥打灯笼-照旧,显示没问题,保存中文乱码。后来把要存的内容在保存之前写入日志文件。查看日志文件,发现作为单独网站运行的时候,把数据从文本框取出来,保存之前就已经是乱码了。晕。
最后没办法,把web.config文件,编码设置项改回:<globalization culture="zh-CN" uiCulture="zh-CN" requestEncoding="Utf-8" responseEncoding="Utf-8" fileEncoding="Utf-8" />,保存问题解决了。.ascx文件中加入中文怎么办?没办法,只好使用资源文件来解决,不过这也是Rainbow Portal的做法--所有不是保存在数据库里要显示的文字,全部通过资源文件获取。
问题好像解决了,但我自身并没有真正搞明白编码问题,为什么在虚拟目录下可以,作为独立网站就不行了?慢慢学习吧。