DotNetNuke 中文乱码问题的解决

简介: 在制作DNN皮肤和开发模块时会遇上中文乱码的问题,如下是解决方法。皮肤乱码 在制做一个DotNetNuke Skin的时候,皮肤上面使用了中文字,可放上去后皮肤的中文字却变成乱码了。 解决方法是: 在Dreamweaver中,点击“修改->页面属性->标题/编码”,修改“编码”为"UTF-8" 修改web.config中的globalization节如下:     (直接拷贝请去掉回车) 模块中的中文乱码 在VS 2005中开发的模块,安装之后界面的中文变成乱码。
在制作DNN皮肤和开发模块时会遇上中文乱码的问题,如下是解决方法。

皮肤乱码


在制做一个DotNetNuke Skin的时候, 皮肤上面使用了中文字,可放上去后皮肤的中文字却变成乱码了。

解决方法是:
  1. 在Dreamweaver中,点击“修改->页面属性->标题/编码”,修改“编码”为"UTF-8"
  2. 修改web.config中的globalization节如下:
     < globalization  culture ="zh-CN"  uiCulture ="zh-CN"  requestEncoding ="UTF-8"
     responseEncoding
="UTF-8"  fileEncoding ="UTF-8"   />(直接拷贝请去掉回车)


模块中的中文乱码

在VS 2005中开发的模块,安装之后界面的中文变成乱码。

解决方法:

  1. 在VS 2005中,点击"File->Advanced Save Option",Encoding 选择"Unicode(UTF-8 with signature)-Codepage 65001)"
  2. 跟皮肤乱码中的步骤相同,修改web.config文件。

以上两种问题的起因

问题的原因就是网页的编码和程序设定的解码方式不一致,一般的DNN帮助文档会要求修改globalization节中的编码方式为GB2312,但这种方式会造成DNN对一些中文的不正常解码。


SQL Script文件乱码

模块的SQL Script文件(如01.00.00.SqlDataProvider)中含有中文(一般我们是用来填充一些示例数据),上传、安装模块后,写入数据库的中文字段都变成乱码。详细问题示范可以参考这里: SQL SERVER 2005 EXPRESS与ASP.net出现中文变成问号的奇怪问题。很可能不是通常的utf-8编码问题。

这是DNN的一个BUG,DNN执行模块安装时,会把所有的SQL Script都转为ASCII,所以遇上双字节的文字都会变为乱码。具体分析参考: 开源ASP.NET程序是如何处理文件编码的-从DotNetNuke看过来

解决方法是:
把这个部分移到Page_Load()里面做,就避开了DNN的BUG.

相关文章
|
6月前
|
编解码 JavaScript 编译器
[字符编码] 实战篇:QT中文乱码的解决办法
[字符编码] 实战篇:QT中文乱码的解决办法
1939 0
|
编解码 中间件 Java
javaWeb解决中文乱码的一点小总结
不同形式的请求及携带参数问题导致的乱码及解决
vs2015 生成 cordova 页面中文乱码
原文:vs2015 生成 cordova 页面中文乱码 1.用VS2015新创建Cordova项目,启动运行index.
1256 0
|
SQL 机器学习/深度学习 Unix
|
Java 应用服务中间件 数据库
|
Web App开发 JavaScript 前端开发