WSS3SDK之:更新网站栏

当我们修改了网站栏后,可以更新所有基于该模板的列表栏。这是通过在网站栏上推送(pushing down) 更改来实现的。一个列表栏保留了作为其基础的网站栏相同的栏ID;当我们将网站栏的更改推送出去时,WSS会找出所有基于此网站栏的列表栏并更新他们。

推送的网站栏更改没有粒度可言;整个列表栏定义都将用当前的网站栏定义覆盖。也就是说所有我们对列表栏所做的更改都将被覆盖。

与内容类型不同的是,我们不能基于其他网站栏来创建新的网站栏。

推送不是一个要么全由要么全无(all-or-nothing)的过程:如果推送在一个列表上失败了,WSS会继续在其他列表上进行推送。WSS会在推送操作完成后返回一个过程中错误的列表。

注意

在网站上创建或管理一个网站栏,您必须具有至少网站设计者的权限。如果您没有访问子网站的适当权限,对应该子网站中栏的推送操作将失败。

编程更新网站栏

如果要通过编程方式变更网站栏,可以先编写代码更新该栏,然后调用Update方法。该方法有一个参数,我们可以指定是否推送这些变更到基于该网站栏的列表栏。

存储对栏的更新

WSS不会将对网站栏的更改写回到网站栏定义本身中。相反,WSS以WSS数据库条目的形式存储这些对网站栏的更新。

事实上所有的列表栏都以WSS数据库条目的形式存储。这是因为当我们添加网站栏到列表中时,WSS拷贝网站栏的定义到列表中,变成了列表栏。
posted @ 2008-06-24 20:18  Sunmoonfire  阅读(348)  评论(0编辑  收藏  举报