二十四画生的Blog


        ——开始学习DotNetNuke(DNN)
posts - 85, comments - 1177, trackbacks - 46, articles - 8
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理
 



  DNN做为一个优秀的门户网站框架,可以通过安装各种功能模块的方式扩充应用。正是通过这一优秀的功能,DNN框架可以实现:文章管理,图片管理,文档管理,论坛,博客,商店,调查,FAQ等等各种各样满足实际需求的模块。通过这个强大的框架支持,我们可以很容易的实现这些模块。比如:权限控制,多语言支持,多数据库支持,搜索,聚合,皮肤等功能,我都可以很容易的通过框架实现。如果是在平时,光是实现这些基础功能我们就需要花去大量的时间。现在有了DNN框架的支持,我们就可以集中精力投入到模块的业务逻辑和流程上,从而大幅度提高开发效率和质量。
  《DNN模块开发系列文章》将通过开发一个简单的文章模块(Article)为例,讲解整个模块的开发流程,和模块相关的一些DNN命名空间功能,如何实现模块搜索、聚合、导入导出等扩展功能,以及后期如何维护和升级DNN模块。

  一般来说DNN模块开发有以下6个步骤,我也将安照每个开发环节,讲讲我在DNN模块开发中的心得:
1、分析设计(确定模块功能,确定数据字段表结构,确定数据表名称,确定解决方案名称等几个工作)
2、建立开发环境(确定整个模块的文件结构,讲解DNN模块需要用到的dll和命名空间,以及这些命名空间的功能)
3、程序设计(设计需要几个控件来实现,每个控件的作用名称)
4、程序编码(介绍使用CodeSmith,进行数据访问层、业务逻辑层和存储过程的编码)
5、实现模块的扩展功能(如:搜索,聚合,导入导出)
6、生成安装脚本,打包程序。(讲解如何高效正确的编写安装脚本和生成安装包)


分析设计

  首先讲讲这个文章模块将要实现的功能:一个简单的文章模块,提供发布文章(包括作者,标题,内容,发布时间),列表显示(数字分页,需要设置分页大小),需要提供导入导出聚合和DNN中检索功能。
根据上述需求描述,我确立了以下表结构
文章信息表:MyCompany_Article
ArticleID               文章ID      int                       主键
ModuleID             模块ID      int                       关联模块信息表(Modules)
Title                      标题          nvarchar(225)
Content                 内容          ntext
CreatedByUser     作者          int                       此处存用户ID
CreatedDate         创建时间  datetime
注:因为DNN可以安装多个功能模块,为了不和其他模块发生冲突,最好以公司名+模块功能描述的方式来命名。如果你的文章信息表其名为Article就很容易和其他文章冲突。

  解决方案名称也遵循公司名+模块功能描述的方式来命名,所以我确定模块解决方案名称为MyCompany.Article。

  通过上述分析,我们基本清楚了这个模块要实现的功能,下面就可以实际动手开发了。下一篇文章是《DNN模块开发系列文章(2)——建立模块开发项目》,将讲述如何建立一个简单高效的模块开发项目和组织一个清晰的文件结构。


系列文章导航:
DNN模块开发系列文章(1)——分析设计
DNN模块开发系列文章(2)——建立模块开发项目
DNN模块开发系列文章(3)——在DNN中添加模块定义

Feedback

#1楼    回复  引用  查看    

2006-08-03 19:50 by aspnetx      
可惜如果有c#版本的就好了
不过还是决定学一学

#2楼    回复  引用    

2006-08-09 05:32 by 正树 [未注册用户]
ok 我来支持下

#3楼    回复  引用    

2006-09-04 11:11 by lele[匿名] [未注册用户]
ok ,很好!

#4楼    回复  引用  查看    

2006-09-25 12:29 by flyinging之路      
正在学习

#5楼    回复  引用    

2006-10-20 22:46 by dnnfamily [未注册用户]
dnnfamily的QQ群:31760955
DNN空间每月只要120元
详情请见:http://www.dnnhost.cn/

#6楼    回复  引用    

2007-07-24 09:54 by 余国先 [未注册用户]
很感谢你的文章

#7楼    回复  引用    

2007-08-28 16:35 by liuhui [未注册用户]
  你很厉害啊

#8楼    回复  引用    

2008-01-10 08:47 by jedliu [未注册用户]
老大,求助啊!现在做一个DNN的东西,但出不来效果。
我想问下,创建用户控件时需要做些什么才行啊,为什么我的控件要么显示不出,要么就出错误呢?!

#9楼    回复  引用    

2008-05-13 18:28 by dnn [未注册用户]
请问你有没有DNN皮肤代码呀?我对这个DNN皮肤制作还不是很熟,对它也很头疼,如果你有,请帮助一下.我的邮箱:gsshappyeveryday@163.com
初学者:dnn

#10楼    回复  引用  查看    

2008-06-16 21:53 by dnnme      
非常感谢楼主的贡献.


----------------------------------------------
DNN专业论坛:http://www.dnnme.cn

#11楼    回复  引用    

2008-08-27 17:35 by nzy [未注册用户]
非常感谢!!!

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2006-08-09 00:30 编辑过
"五向定位"职业成长路线公开课(上海、南京、大连)
Google站内搜索


相关链接: