理解DotNetNuke核心架构
1. 架构概览
DotNetNuke(DNN)作为一个成熟的网站内容管理系统,其核心架构设计精巧,能够动态生成页面并高效管理模块和皮肤。与传统依赖多个静态网页的应用不同,DNN采用单个主页面 Default.aspx
,通过 tabID
从数据库中检索所需的皮肤和模块,从而构建出用户请求的具体页面。
在DNN中,“标签(Tab)”和“页面(Page)”的概念是互通的。最初在IBuySpy项目中,页面被称为标签,因为它们在界面上看起来像标签一样。理解这一概念对于后续学习DNN的页面管理至关重要。
2. 深入核心
DNN应用程序包含超过80,000行代码,要全面掌握其内部机制并非易事。以下是几个关键组件的详细介绍:
2.1 PortalSettings及其辅助类
PortalSettings
类位于 Components\Portal\PortalSettings.vb
文件中,它保存了从门户ID到默认语言的各种信息,并负责确定每个页面所需的皮肤和模块。以下是 PortalSettings
类的部分私有变量:
属性名 |
---|