解读ASP.NET Portal Starter Kit(2)——用户配置文件篇

ASP.NET Portal Starter Kit 将网站所需的配置信息都存储在一个 XML 配置文件( PortalCfg.xml )中。这些配置信息控制门户内容的布局(如:显示哪些门户的标签,每个标签上显示哪些门户模块)以及安全设置(如:用户类别,访问权限等)。网络管理员通过修改配置文件就可以达到修改网站布局和调配各模块用户访问权限。将网站的配置信息存储在 XML 配置文件中而不存储在数据库中的好处有: 1 、减少对数据库的 I/O 操作(因为配置一旦设置好,就很少改动。在初始化 Application 时将配置文件信息一次性读入内存就能大大提高性能); 2 、将相对固定的配置信息放到 XML 配置文件中可以简化数据库的结构,将数据库主要用来存储用户模块信息,这样也利于以后的扩展。
先看看网站的框架布局是怎样的,然后再看看是如何利用用户配置文件实现框架布局的,框架布局图如下:
整个网站由顶部导航栏和左中右三个放置用户功能模块的框架组成,并默认给出了十个功能模板:公告 (Announcements) 、联系方式 (Contacts) 、讨论 (Discussion) 、事件 (Events) HTML  文档 (Html Document) 、图片 (Image ) 、链接 (Links) 、快速链接 (QuickLinks) XML/XSL 、文档 (Documents) ;五个管理模板:模块类型 (Module Types) 、角色 (Roles) 、标签 (Tabs) 、网站设置 (Site Settings) 、管理用户 (Manage Users)
 
配置文件中的表:
Global 站点信息配置表
字段 备注
PortalId 站点ID(可架设多个门户站点而共用一个数据库,通过PortalID区分)
PortalName 站点名称
AlwaysShowEditButton 是否总是显示编辑按钮
 
Tab 导航栏标签信息表
字段 备注
TabId         标签ID
TabName 标签名称
AccessRoles 可访问该标签的角色
TabOrder 标签排序号
ShowMobile 该标签是否在“移动设备浏览器”上显示
MobileTabName 在“移动设备浏览器”上显示的名称
 
Module 用户模块表(显示在网站上的各个功能模块;如:快速链接,公告等)
字段 备注
ModuleId 模块ID
ModuleTitle 模块名称
EditRoles 可编辑该模块的角色
ModuleDefId 关联用户模块定义表的Id,指明该用户模块是有那个模板实现
PaneName 标注显示在“左中右”那个框架中
CacheTimeout 缓存时间
ModuleOrder 显示的顺序
ShowMobile 是否在“移动设备浏览器”上显示
 
ModuleDefinition 用户模板定义表(设置用户模板,由那个用户控件实现,系统默认给出了十个用户模板和五个管理模板,可以在扩充)
字段 备注
ModuleDefId 模板ID
FriendlyName 模板名称
DesktopSourceFile “桌面浏览器”上显示的用户控件源文件地址
MobileSourceFile “移动设备浏览器”上显示的用户控件源文件地址
 
SettingsSetting 当为 XML/XSL 模板和图片模板时设置 XML/XSL 文件和图片的地址。
 
 
各表之间的关系:
 
实现方式:
调用时,通过使用配置事务组件,从门户应用程序的 Global.asax 文件中获取并加载配置信息。接下来,配置信息被应用到门户的 DesktopDefault.aspx 页面中(如果进行访问的浏览器是一个 HTML 桌面设备)或门户的 MobileDefault.aspx 页面中(如果进行访问的计算机是一个移动设备)来提供一个门户的标签视图。在相应页面显示时根据当前页面的 TabID 找到当前页面显示页面的模块,根据 PaneName 分别显示在不同的框中。具体的代码可看: Global.asax DesktopDefault.aspx DesktopPortalBanner.ascx 这几个文件。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值