Spiga

DNN(DotNetNuke)研究手札系列3-框架(概述)

2004-09-04 13:32 by 灵感之源, 8104 visits, 收藏, 编辑
从这章开始介绍DNN的框架,DNN的框架可以从以下角度分:
1、目录,中国Rainbow已经对各目录和各文件的用途写了比较详细了,我不再重复,我只从主要框架上说:
  a.管理(Admin):
   a1.容器(Container)
   a2.文件(File)
   a3.模块定义(ModuleDefinitions)
   a4.私用程序集上传(PAUpload)
   a5.门户(Portal)
   a6.外观/皮肤(Skin)
   a7.栏目/标签(Tabs)
   a8.用户(Users)
  b.功能组件(Components)
   b1.容错(Exceptions)
   b2.日志(Logging)
   b3.日程(Scheduling)
  c.UI控件:
   c1.HTML编辑器(FTB)
   c2.菜单(SolpartMenu)
  d.桌面模块(DesktopModules)

 从中可以看出,DNN的目录框架相当紧凑,你在根目录只能看见几个文件,而管理目录是整个门户的核心,功能组件是骨架,UI控件是核心应用,桌面模块是具体业务应用。

2、按核心功能,DNN可以分成以下几块:
  a、外观/皮肤(Skin),包括Skins、Tabs、Modules、ModuleDefinitions、Containers等;
  b、管理,包括Portal、Users、Log、Logging、Schedule、PAUpload、Security、Files等;
  由此看出,Skin的地位在DNN中是最核心的。

DNN的应用了颇多的.NET技术,如大量继承、重载、代理等,实现了如抽象的数据访问(DataProvider)、数据缓存(DataCache)、多线程日程(Scheduling)、错误处理(Exceptions)、空类型(Null)等功能,我稍后将逐一为大家深入介绍各种技术的特点、实现和应用。
Add your comment

23 条回复

  1. #1楼 venjiang[未注册用户]2004-09-04 13:39
    支持!应该开一个DNN专栏,或开个论坛.
     回复 引用   
  2. #2楼 boy1192004-09-04 14:39
    太好了,总算出来了。
     回复 引用   
  3. #3楼 中国Rainbow2004-09-04 21:40
    灵感 问一下
    在满足什么条件的时候 rainbow才会重新进行初始化安装。
     回复 引用   
  4. #4楼 unruledboy(灵感之源)2004-09-05 17:29
    中国Rainbow :
    您这个考倒我了,我没有深入研究Rainbow。
     回复 引用   
  5. #5楼 做人要厚道2004-09-05 21:18
    向高手学习!你是分析原代码的?有没有辅助工具能够帮助我们分析这些类之间的关系,谢谢!
     回复 引用   
  6. #6楼 中国Rainbow2004-09-05 21:28
    灵感 那我问问
    在满足什么条件的时候 dnn才会重新进行初始化安装
     回复 引用   
  7. #7楼 灵感之源2004-09-05 22:30
    你这个问题,我不理解你到底问啥。“重新进行初始化安装”,是被迫这样还是你主动这样?

    to:做人要厚道
    是的,我直接分析源代码。我似乎没有找到这样的工具。不过你可以看看技术白皮书,里面应该有关系。
     回复 引用   
  8. #8楼 中国Rainbow2004-09-06 01:30
    因为我的 www.t910.net的数据库 不是在第一次访问的时候自动安装的,是我通过生成本地dotnetnuke数据库,然后在远程运行sql安装然后把本地数据导入远程数据库安装的
    详细情况 http://www.t910.net/Default.aspx?tabid=32
    现在经常出现的问题都是数据库的默认值问题,我想知道,怎样强制dnn再次进行初始化安装。这样就可以免去我不断的修改远程数据库(太费时间!)
     回复 引用   
  9. #9楼 鲁旭2004-09-06 15:38
    我想问一下哪里能下载到dnn的c#版本 我昨天到他们网站上下载了一个vb.net的版本!
     回复 引用   
  10. #10楼 灵感之源2004-09-06 15:59
    c#版是另外的团队写的:www.csharpnukecom

    to:中国Rainbow
    你在global中的application.start可以找到upgrade.autoupgrade方法,看看代码就知道了。
     回复 引用   
  11. #11楼 灵感之源2004-09-06 15:59
    to:中国Rainbow
    请马上联系我!unruledboy@hotmail.com(msn)
     回复 引用   
  12. #12楼 寒星2004-09-07 10:03
    我在www.csharpnuke.com上注册了用户,但它们的系统近期好象有点问题,我始终无法正常登录网站,也就无法下载了。你能提供一个下载点吗?
     回复 引用   
  13. #13楼 灵感之源2004-09-07 11:59
    我也从来没有下载过,有人告诉我还没有提供下载:(
     回复 引用   
  14. #14楼 鲁旭2004-09-08 23:41
    我现在在公司里负责一个c#工程中数据库访问的工作,老大让我做的独立性一定要高。听你说到dnn在这方面作的很好。不知道能不能给我讲讲他们的数据层的设计思路,或者介绍点资料给我看看。谢谢
     回复 引用   
  15. #15楼 灵感之源2004-09-09 11:38
    你可以去www.dotnetnuke.com下载dnn的源代码和详细的技术文档,关于数据访问独立成文,非常深入。

    实际上DNN用了微软DAAB(Data Access Application Block)和工厂设计/提供者模式,把数据访问抽象化了。

    关于DAAB,你可以访问
    1、http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/daab-rm.asp

    2、http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=c20d12b0-af52-402b-9b7c-aaeb21d1f431
     回复 引用   
  16. #16楼 鲁旭2004-09-10 10:00
     回复 引用   
  17. #17楼 shinewaysoft@hotmail.com[未注册用户]2005-10-23 11:08
    SolpartMenu的menuclick事件该怎么用?我怎么写过后点击菜单没有反映啊
     回复 引用   
  18. #18楼 antoknet[未注册用户]2006-07-15 15:59
    给大家推荐一个很好的建站工具——DNN


    DotNetNuke(简称DNN)是一个免费、开源、可扩展、几近完美的内容管理系统,同时DNN提供了强大的页面管理功能(皮肤)。DNN可以广泛应用于商务网站、企业内网和外网网站、在线内容发布网站。是建立在微软ASP.NET平台上的一套WEB应用框架。

    大家可以登陆其官方网站进行下载,http://www.dotnetnuke.com/">http://www.dotnetnuke.com/
    4.X版本需要安装.net framework2.0
    3.x版本安装.net framework1.1即可

    dnn源代码下载前要注册个用户,挺烦人。人家毕竟是开源的东东,用起来也比较方便,就先忍忍吧:)

    安装配置过程的视频教程:
    http://www.dnnfamilly.com/Default.aspx?tabid=54


    另外,使用DNN的朋友们可以关注以下几个网站,个人感觉不错,推荐给大家。

    不想花钱就看看免费资源站,准备买皮肤的可以看看皮肤购买站,那的皮肤很漂亮的。

    官方站点,这个不用多说了,用dnn的人都知道:
    http://www.dotnetnuke.com

    免费皮肤模块,东西比较全,而且免费呦,穷人多看看:
    http://www.dnnfamily.com

    收费皮肤,皮肤漂亮,就是得花银子啊,适合有钱的,呵呵:
    http://www.dnndesigner.com
    http://www.dotnetnukeskins.com
    http://www.dnncreative.com
    http://www.2designstudio.net
    http://www.cicada.co.nz/DNN/Default.aspx?tabid=54

    DNN搜索引擎,这个也有点意思:
    http://dotnetnuke-search-swicki.eurekster.com


    我用dnn做了几个网站,感觉用起来比较方便
    www.kekexili.org.cn
    www.zwick-china.com
    www.jlgk.net
    www.antok.net
    欢迎大家光临指教
     回复 引用   
  19. #19楼 jimie      2011-03-16 10:00
    定制DNN皮肤其实是比较难的东西。要改很多,我就是在这里学到的。
    分享链接
     回复 引用 查看