创建新字段并更新内容类型(以及所有实现)

时间:2009-02-03 22:12:27

标签: sharepoint

我正在现有的SharePoint网站上做一些工作,我需要做的一件事是在现有内容类型上创建一个新字段。

我将通过一个功能部署更改,所以我在讨论是否使用CAML生成字段,然后以编程方式将其添加到现有内容类型,或者我是否可以通过功能接收器完成所有操作

这样做最好/最干净(也是最可重复使用)的解决方案是什么?

3 个答案:

答案 0 :(得分:0)

一种简单的方法是在功能接收器中执行此操作,获取对SPContentType的引用,将字段添加为XML(SPContentType.Fields.AddFieldAsXml),然后添加update pushing the changes to child content types

修改已存在的网站上的内容类型真的很棘手。我首选的方法是为所有内容类型提供解决方案,并在进行更改时重新部署该解决方案。

答案 1 :(得分:0)

我将假设通过 field 表示新的站点列。在这种情况下,我会在后面的代码中完成所有操作。创建站点列所需的代码量相当少。如果您愿意,您还可以尝试从正在使用它的任何内容类型中删除站点列,但这是一项涉及更多的任务。

从重用角度来看,如果在feature.xml文件中设置属性,则可以使用这些属性来配置列名,列类型,目标内容类型等内容,然后创建一个类将来可以重复使用。

答案 2 :(得分:0)

您是否查看了http://msdn.microsoft.com/en-us/library/ee537575.aspx,特别是< AddContentTypeField>代码?这将是一种声明性的方式。