开源CMS建站项目DNN研究与心得_.NET_编程开发_程序员俱乐部
中国优秀的程序员网站
程序员频道
CXYCLUB技术
地图
最新资讯
|
百度新闻
|
GOOGLE地图
|
RSS订阅
|
更多
职场话题
生活休闲
恋爱交友
程序人生
学习进修
职业发展
项目管理
求职面试
程序员创业
JAVA
.NET
C/C++
Ruby
Delphi
JavaScript
PHP
ASP
JSP
HTML
XML
移动开发
开发工具
其他
编程开发
数据库
操作系统
新闻资讯
互联网
非技术区
非技术区
生活休闲
恋爱交友
职业发展
求职面试
程序人生
移动开发
开发工具
DB2
MySql
Sybase
开发
JAVA
.NET
PHP
C/C++
数据库
SQL Server
Oracle
互联网
运营
推广
营销
SEO
系统
Linux
Unix
Windows
资讯
动态
产品
人物
创业
职场
学习
管理
热搜:
高手
大型网站
天猫
回溯
循环
class
instance
Win8
美图秀秀
摄像头
二维码
IIS7
controller
二进制
异步
高手
大型网站
天猫
回溯
循环
class
instance
Win8
美图秀秀
摄像头
更多>>
您所在的位置:
程序员俱乐部
>
编程开发
>
.NET
> 开源CMS建站项目DNN研究与心得
开源CMS建站项目DNN研究与心得
2014/4/30 22:43:38 DNNTools 博客园
我要评论(
0
)
摘要:
DNN(Dotnetnuke)首先是开源的,并且采用BSD开源协议,也就是说你可以任意修改源代码、传播、作为商品出售,仅有的要求就是保留源代码中的版权文字,这就解决了我多年来的心病:我知道动网新闻发布系统、微软官方论坛等都做得相当不错,可惜源代码都是不公开的,并且有着很严格的产权保护,你在做项目时不得不多考虑一些东西,但是DNN不一样,它几乎赤裸裸的以至于你可以为所欲为,并且得到了官方的稳定支持,学习和开发资料相对齐全,这么好的东西,我为什么不采用拿来主义呢?DNN部署是很简单的,没费多大劲
标签:
项目
建站
开源
开源CMS
CMS
研究
DNN (Dotnetnuke) 首先是开源的,并且采用BSD开源
协议
,也就是说你可以任意修改源代码、传播、作为商品出售,仅有的要求就是保留源代码中的版权文字,这就解决了我多年来的心病:我知道动网新闻发布系统、微软官方论坛等都做得相当不错,可惜源代码都是不公开的,并且有着很严格的产权保护,你在做项目时不得不多考虑一些东西,但是DNN不一样,它几乎赤裸裸的以至于你可以为所欲为,并且得到了官方的稳定支持,学习和开发资料相对齐全,这么好的东西,我为什么不采用拿来主义呢?
DNN部署是很简单的,没费多大劲,我从官方网站(
http://www.dotnetnuke.com
)下载了安装版,数据库只支持
SQL Server
,不过它提供了
接口
,你可以自己开发让它也同时支持Oracle,Access等,但是工作量不小哦。
当我输入localhost进入刚安装完毕的DNN时,启动速度相对很慢,我的笔记本特别兴奋,
硬盘
使劲的转着,十几秒后终于看到了首页,界面设计属菜鸟级的,一如陈世美相遇秦香莲,没多大兴趣也没多大惊喜,而且扑面盖地的英文,好在本人英文水平也还凑合,据说和子怡姐姐不相上下,整个网站没有
Flash
。我很快找到了登录窗口,想进入后台看看,
程序员
嘛,多少都是偷窥狂,都渴望尽早的撕开那
美丽
的外衣,渴望尽早的感受那惊心动魄的内部结构。
我以最高权限Host用户进入了,后台不是我想象中,如动网一样的Outlook菜单,而是和前台没多大区别,多个了工具栏,每个模块,如新闻、
友情链接
都多了一个小箭头,鼠标晃过去就出现了菜单,很多功能
所见即所得
,真正震憾之旅开始了,要说清出这一大堆的前因后果,得听我细细道来。
我首先遇到的问题是
汉化
,我不可能拿个英文版的东西给客户吧?人家当时就可以用中文骂死我,但是我不知道DNN如何实现多语言?看了一下开发文档,原来 DNN是以资源包的形式实现的,我当时大笑,英雄所见略同啊。就是有一大堆的xml文件,你要变成中文的,就加个xml文件,按条目将标签对照着翻过来就行了,而强大之处在于,你可以在后台直接上传个中文包就立即汉化,也可将
自己手
动汉化的内容导出成xml资源文件包。这里特别感谢 dnnChina 网站,将绝大部分都成功翻译成中文了,而且相当专业,我从dnnChina 网站下载完中文包,几秒钟后,网站全成中文的了。不过只对DNN5的
版本
支持较好,到了DNN7则无法完全汉化了。不过后来经常
发现
一些乱码,于是我在web.config文件中,把默认
编码
utf-8换成了gb2312,
乱码问题
都顺利解决,我当时就纳闷:你 utf-8不是号称支持全球文字吗?怎么一遇到中文就水土不服呢?郁闷了好久,始终不得其解,打电话咨询相关机构,老外一口英文,他说的话我全能听懂,可是我说的英文这家伙竟然一句都听不懂,这老外听力根本不行,于是更郁闷了。
汉化问题解决了,那么紧接着是改变页面视觉效果了,这是我最耗时间的地方,客户经常以页面设计来决定整个项目的成败,我当时呕心沥血,穷尽所思,终于设计出了令客户满意的页面,当时真的很崇拜自己,美工编码双料冠军,人世罕见(臭美一下)。那么如何将这些定制的页面套到DNN呢?DNN自己定义了一系列的标准,按照这个标准,我几乎当天就制作做完了HTML页面,传到后台中就自动套上了,真的很神奇啊。
皮肤问题搞定,然后就是要实现内容的后台添加了。DNN以模块的形式实现这些功能,比如,客户要一个
在线
调查,直接插入相关模块就行了,而且各个模块可以在页面中自由的移动,很方便。其实所有模块中,最重要的是就是文章管理模块了,可惜DNN没有自带这个模块,上网搜出一个免费的,备受国内开发者推崇的 Article模块,可惜不太好使,没办法,只好自己开发一个。我觉得这才称得上是黄金框架,你开发一个模块,DNN提供了很好的接口,不用改变原系统一行代码,开发完成后,再以插件方式套上去,DNN自动识别并可以立即使用,真正的即插即用。
你如果能开发出第一个模块,其他的产品推荐、留言板模块就特别快了,不过很多模块DNN都自带了,不好使的可以到网上去搜,很快就可以找到,后来发现国外好多程序员在网上卖DNN模块,有个我花一天完成的同样功能模块,老外竟然卖2美元,真是黑啊,
商业
意识真强啊。
不过,当下DNN也有
一些问题
急待解决:1、性能不是很好,我用DNN搭建完成的这个项目后,用LoadRunner测试了一下,50人同时在线,首页打开竟要32秒,并且DNN是很耗资源的,我分析了一下,DNN由于产品化,为支持多语言、多数据库等功能增加了许多额外的代码,自带的模块从数据库读取数据时没做优化,都是按一股脑的绑到了
DataSet
中,当数据量到万条以上,服务器估计就得撑不住了。
2、自带的模块大多不太好使,很多模块连基本的翻页功能都没有,例如友情链接模块,就只支持文字而不支持图片链接,只好自己重新开发了。
3.调试代码太耗时间。由于DNN本身代码量就不少,每次要调试一个功能时,你最好旁边放杯茶,当你茶喝完了,要调试的代码也就出来了。后来自己开发模块时干脆就自己建立解决方案,把需要的dll都引入,这才大大提高了开发效率。于是当时我又纳闷了:Windows上千万条代码,也不知
他们
是怎么调试的?
DNN在长达10年的发展过程逐渐被国外的一些公司和组织所接受,并且形成了良好的生态。有大批的开发者和建站者为其发展添砖加瓦,由于平台建设所需的皮肤和模块很多,越来越多的人们使用DNN来建站。反观国内,由于对软件产品的消费意识不强烈,导致DNN发展止步不前也值得我们国人所思的。
大家可以去我的网站上看一下DNN皮肤和模块的介绍,也许会让大家很有启发:http://www.dnntools.net/DNNStore
上一篇:
微软看好自制剧 将推独家游戏内容
下一篇: 没有下一篇了!
相关文章
·
开源CMS建站项目DNN研究与心得
·
工信部:电信企业在研究共建通信设施公司
·
研究发现散步能激发创造性思维
·
Async 与 Await 关键字研究
·
不要因为没有为开源事业做贡献而感到内疚
·
微软研究院展示结合手势追踪技术键盘
·
担心众筹项目跳票?上保险!
·
Android 8款开源游戏引擎
·
项目中常用到的正则表达式(收集+共享=进
·
Facebook将神奇动画引擎Pop开源
查看所有评论(
0
)
我要评论
发表评论
用户名:
匿名
最新文章
C#之工厂模式..
深入学习Htt..
·
开源CMS建站项目DNN研究与心得
·
C#之工厂模式
·
Async 与 Await 关键字研究
·
用C#实现C/S模式下软件自动在线升级
·
什么是DNN,Dotnetnuke介绍和
·
文件流
·
深入学习HttpClient(一)扩展额
·
c# GridControl怎么换行
·
C#方法中的ref和out
·
随便扯扯,程序员应该具备哪些素质
·
套用EVAL
·
我也要谈谈大型网站架构之系列(2)——纵
·
DNN模块开发之利器篇:七种武器
·
【AutoMapper官方文档】DTO与
·
了解JavaScript的执行上下文
最新标签
高手
大型网站
天猫
回溯
循环
class
instance
Win8
美图秀秀
摄像头
今日热点
·
[转]超时时间已到。超时时间已到,但是尚
·
c# 反射详解
·
错误:没有注册类别 (异常来自 HRES
·
Spring.net + Fluorin
·
随便扯扯,程序员应该具备哪些素质
·
C# ?(问号)的三个用处
·
让Ajax更简单
·
送上今年微软的一道笔试题
·
C#语音朗读文本 — TTS的实现
·
.NET读取Office文件内容(wor
推荐文章
【共享】流程图..
C# Stri..
·
java.net.Conne
·
错误:没有注册类别 (异常来自 HRES
·
iis7.0官方下载 IIS 7.0(微
·
Devpress.XtraGrid.Gr
·
.NET 开发淘宝API代码实例
·
win7 64位 安装ORACLE10g
·
C#开发winform程序的界面框架
·
关于获得Repeater中某行数据项的某
·
expression blend 3破解
·
.net(C#)从html中提取中文字_
·
關於PB12.NET
·
读取csv时中文乱码问题
·
gridview导出数据至Excel o
·
c# WinForm开发 DataGri
·
C# ComboBox控件使用
English
|
关于我们
|
诚聘英才
|
联系我们
|
网站大事
|
友情链接
|
意见反馈
|
网站地图
Powered by
程序员俱乐部
程序提供: HugoCMS 2.0
网站备案:苏ICP备11048748号-1