SP2010开发和VS2010专家"食谱"--第四章节—列表定义和内容类型(1)--创建网站栏

网站栏是创建内容类型的基石。本文中,我们将用SharePoint对象模型创建网站栏。

Getting ready

你的带有SharePoint2010的开发机器必须具有完整功能。你也需要VS2010 IDE。

How to do it

1. 管理员身份打开VS2010.

2. 新建项目,框架选择.NET Framework 3.5.


3. 选择空白SharePoint项目。

4. 命名项目SiteColumn点击确定。

5. 默认部署为场解决方案,下一步。


6. 右击Feature文件夹,添加Feature。


7. 在Feature中添加一个事件接收器。


8. 这样新增了Feature1.EventReceiver.cs。清除FeatureActivated和FeatureDeactivating方法的注释。

9. 添加下列代码创建TestColumn。



10. 添加代码删除FeatureDeactivating方法中的栏。你的代码应该是这样:


11. 当你生成并运行此解决方案时,你会被带到站点。

12. 导航到网站操作-网站设置-库-网站列。你应该可以看到新的网站列TestColumn在新组Chapter3Columns:


13. 你可以核实所有属性,点击TestColumn栏。


How it works

代码很简单。我们添加一个域(域和栏用来指同一个对象)到网站域集。方法被重载使用不同参数。我们使用方法将栏显示名、栏目类型以及是否必填为参数。方法返回字段的内部名。内部名对于域是唯一的。这样你可以在多个列表使用相同域,改变显示名满足你的需要。通过使用内部名,我们抽取域对象并设置其他属性如最大长度字符,是否必填。我们也设置域所属的组名。当组中没有域时,自动被删除。所以没有额外的代码创建或删除组。

There's more

你可以使用网站域集的AddFieldAsXml方法创建新网站栏。这个方法里,你将传递想要创建的域的XML架构。例如,下列大妈展示XML架构:


Deleting the site columns on deactivation of the feature

本文中我们在deactivating方法删除了网站列。这是清除网站列的一般方法。在删除前确保它没有在(已在网站列中部署和使用)内容类型上产生不利影响。

See also

1. 拓展现有内容类型。

2. 创建自定义内容类型。

原文地址:https://www.cnblogs.com/crazygolf/p/3856790.html