下图显示了信息策略对象模型的主要类的组织结构,这些类位于 Microsoft.Office.RecordsManagement.InformationPolicy 命名空间中。顶级对象 PolicyCatalog 表示包含网站级 Policy 和 IPolicyFeature 集合的目录。
各种对象的大多数属性都是只读的,并且不能以编程方式进行设置。各种信息策略、策略项、策略功能和策略资源的属性都是在最初将对象添加到 Office SharePoint Server 2007 时所指定的 XML 中设置的。
每个 Policy 对象都表示为网站定义的一个信息策略,因此又包含了 PolicyItem 对象的集合。
同样地,每个 PolicyFeature 对象都表示一个已安装的策略功能,并包含策略功能可以使用的 PolicyResourceType 对象的集合,另外还包含当前为策略功能安装的实际策略资源的集合;其中的每个策略资源都由一个 PolicyResource 对象表示。
.gif)
以编程方式管理策略
您可以使用以下一些方法,以编程方式管理策略:
若要将策略添加到网站集级别的策略集,可使用 Add 方法,该方法使用网站作为 SPSite 对象,并采用表示策略定义 XML 的字符串。
若要向特定的内容类型分配网站集级别策略,可使用 CreatePolicy 方法,该方法将表示内容类型的 SPContentType 对象用作参数。
若要导出网站集级别策略,可使用 Export 方法,该方法将返回一个表示 XML 策略文件的 XmlDocument 对象。
使用 ValidateManifest 方法来确定给定字符串是否为有效的策略定义 XML。
使用 Update 方法提交对策略所做的更改。
若要向策略添加策略项,可使用 Add 方法。该方法采用两个字符串:一个用于表示关联的策略功能 ID,另一个用于表示策略项的自定义数据设置。
以编程方式管理策略功能和资源
您可以使用以下一些方法,以编程方式管理策略功能和资源:
若要添加网站集级别策略功能,可使用 Add 方法,它采用表示策略功能定义 XML 的字符串。
使用 Validate 方法确定“策略功能定义”中指定的所有程序集是否确实存在。
使用 Update 方法提交对“策略功能定义”的更改。
若要将策略资源添加到特定策略功能,可使用 Add 方法,该方法采用表示策略资源定义 XML 的字符串。