WSS3SDK之:如何添加内容类型至列表
您可以在一个列表定义中引用内容类型,以便在用户创建该类型列表是,WSS会默认在列表中包含该内容类型。
列表定义可以包含到Feature中。
当用户创建了一个列表后,您可以通过WSS对象模型来添加内容类型。
在列表定义中指定内容类型
如果要在列表定义 中添加一个内容类型,您可以在列表架构中添加一个ContentTypes元素。ContentTypes元素包含了一个ContentTypeRef 元素的集合。每个ContentTypeRef元素指定了一个WSS中的网站内容类型,当用户创建该类型的列表时,会拷贝到本地列表中,成为列表内容类 型。ContentTypeRef元素仅仅包含了一个属性,ID,用于指定内容类型ID。
您所引用的网站内容类型必须与列表在同一个范围内。也就是说同样在网站集或网站的更高一层。
List元素包含了一个属性,AllowMultipleContentTypes,该属性必须设置为TRUE 以允许列表在创建时内置多个内容类型。同时,List元素还包括了一个属性,EnableContentTypes,也要设为TRUE,来允许WSS在列表中显示多个内容类型。
当WSS创建列表时,仅会创建那些在该列表基础类型架构或列表架构中定义的栏。如果您在列表架构中引用的网站内容类型中的栏并没有包含在列表基础类型架构或列表架构中,那么这些栏将不会被创建到列表中。您必须也要在列表架构中包含这些栏,以便在创建列表时添加他们。
添加一个内容类型到列表定义
2、设置ContentType元素的ID属性为您想要包含到列表中的内容类型的ID。
为已有的列表添加内容类型
您可以通过WSS对象模型来添加内容类型到一个创建的列表。
步骤:
1、通过AvailableContentTypes方法来返回列表所在网站中所有可用的内容类型。该方法返回一个SPContentTypeCollection对象。
2、定义一个SPContentType对象的变量,使其等于集合中的某个您想要添加到列表中的SPContentType对象。
3、通过ContentTypes属性来访问基于特定列表的列表内容类型的集合。该方法返回一个SPContentTypeCollection对象。
4、调用Add方法来添加一个SPContentType对象到列表内容类型集合中。
您要添加的网站内容类型必须在列表可以访问到的范围内,也就是说,必须定义在同一个网站中或比其高的层次中。当您通过对象模型添加一个网站内容类型到列表中后,WSS会自动添加该内容类型的所有栏到列表中(如果之前没有该栏)。这是通过将现有列表实例和内容类型进行对比来实现的。在这种情况下,如果要给列表内容类型添加其他列表栏,必须显式的进行。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!