我们先看一下配置界面的样子:
wss(moss)的所有配置页面都放到C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\LAYOUTS目录
或子目录中,我们将字段权限配置页面(FieldEditControl.aspx)放到Layouts的子目录CodeArt中。
配置界面的核心逻辑开发成一个webcontrol(FieldRightSettingPart),将这个webpart直接嵌入到管理页面,管理页面的代码如下:
wss开发中经常会碰到配置信息存储的问题,如果是webpart,我们可以用webpart的属性来存储,其他情况下,我们可以考虑用数据库或List来存储。
这里我选择用文档库来存储,将配置类序列化成xml存储到一个文档库中。考虑到以后还会碰到这类配置信息存储的情况,把这个功能开发成一个通用的类CongfigManager:(为了以后“可能的”替换数据存储方式,用了工程模式)
这个CongfigManager实现了对一个配置类的保存,获取和删除。
下面考虑配置类如何抽象化
用以下类来表示每个字段的配置信息:
以上的基础类建好了,可以开始FieldRightSettingPart的开发了:
FieldRightSettingPart会在内部生成一个布局表格和很多的子控件,为了便于操作这些子 控件,
声明了三个字典类型的变量,来放置生成的控件,字典key为字段名,值为对应的编辑控件:
按钮提交时,遍历编辑子控件,组装配置类,调用ConfigManage类保存数据。:
game over!
附1:存放配置信息的文档库:
附2:配置信息序列化后的xml格式:
本系列的所有文章:
MOSS字段编辑权限控制方案(4)-打包解决方案