一:首先定义一个函数来创建内容类型,代码如下:
private SPContentType CreateContentType(SPWeb web, string typeName,string baseTypeName,
string description) { SPContentType contentType = null; try { SPContentType baseType; if (string.IsNullOrEmpty(baseTypeName)) { baseType = web.AvailableContentTypes[SPContentTypeId.Empty]; } else { baseType = web.AvailableContentTypes[baseTypeName]; } contentType = new SPContentType(baseType, web.ContentTypes, typeName); contentType.Description = description; web.ContentTypes.Add(contentType); } catch { } return contentType; }
二:定义两个重载的函数,在函数中先创建网站的field,然后再往内容类型中添加FieldLink
private SPField AddField(SPContentType contentType, string fieldDisplayName,
SPFieldType fieldType, bool bRequired) { SPField field = null; try { using (SPWeb web = contentType.ParentWeb) { web.Fields.Add(fieldDisplayName, fieldType, bRequired); field = web.Fields[fieldDisplayName]; contentType.FieldLinks.Add(new SPFieldLink(field)); } } catch { } return field; } private SPField AddField(SPContentType contentType, string fieldDisplayName, SPFieldType fieldType, bool bRequired, bool bCompactName, StringCollection choices) { SPField field = null; try { using (SPWeb web = contentType.ParentWeb) { web.Fields.Add(fieldDisplayName, fieldType, bRequired, bCompactName, choices); field = web.Fields[fieldDisplayName]; // add a field link to the content type contentType.FieldLinks.Add(new SPFieldLink(field)); } } catch { } return field; }
三:下面函数完成向指定网站中添加内容类型的功能
private void AddContentType(SPWeb web) { if (web != null) { web.AllowUnsafeUpdates = true; SPContentType contentType = CreateContentType(web, "OnlineEvent11", "Event", "OnlineEvent11"); if (contentType != null) { StringCollection statusColl = new StringCollection(); statusColl.Add("Approved"); statusColl.Add("Rejected"); AddField(contentType, "Event Status", SPFieldType.Choice,true, false, statusColl); AddField(contentType, "Number Of Attendees",SPFieldType.Number, false); StringCollection eventType = new StringCollection(); eventType.Add("Business/Career"); eventType.Add("Classes & Lectures"); eventType.Add("Dinners/Galas"); eventType.Add("Fundraiser"); eventType.Add("Misc"); eventType.Add("Seminars");
eventType.Add("Support Groups"); AddField(contentType, "Type Of Event", SPFieldType.Choice,true, false, eventType);
StringCollection audienceType = new StringCollection(); audienceType.Add("Adults"); audienceType.Add("Everyones' Invited"); audienceType.Add("Families"); audienceType.Add("Kids"); audienceType.Add("Men"); audienceType.Add("Seniors"); audienceType.Add("Singles"); audienceType.Add("Teens"); audienceType.Add("Women"); AddField(contentType, "Audience Type", SPFieldType.MultiChoice, true, false, audienceType); contentType.Update(true); } } }
四:.如下代码在feature被激活的时候执行
public override void FeatureActivated(SPFeatureReceiverProperties properties) { if (properties != null) { SPWeb web = properties.Feature.Parent as SPWeb; if (web != null) { AddContentType(web); } } }
五:由于SPFeatureReceiver是抽象类,所以下面方法也要被重写
public override void FeatureDeactivating(SPFeatureReceiverProperties properties) { } public override void FeatureInstalled(SPFeatureReceiverProperties properties) { } public override void FeatureUninstalling(SPFeatureReceiverProperties properties) { }
六:部署成功后,如下图:
发表评论
-
Sharepoint之升级篇
2008-03-07 07:47 1560一:sharepoint介绍<?xml:namespac ... -
SharePoint之定义管理路径
2008-03-12 07:14 1022一:如何设置 通过定义管理路径,可以指定 Web 应用程序 ... -
Sharepiont之页面模型
2008-03-15 17:33 1024本文主要包括以下几方面内容:1.页面布局和母版页2.页面布局模 ... -
Sharepoint站点把我的名字显示成“系统帐户”问题
2008-03-18 21:48 951在你安装了SharePoint Server 2007之后,当 ... -
MOSS中对列表的一些操作(创建,查询等)
2008-06-17 20:47 8541.查询列表的所有字段 SPSite site = new S ... -
微软发布WSS3.0和MOSS2007 基础结构更新
2008-07-17 07:07 683一:Windows SharePoint Services 3 ... -
[翻译]Training Site Template—Part 1:介绍
2008-07-30 20:08 655原文地址:http://blogs.msdn.com/shar ... -
MOSS中的计时器作业
2008-11-05 20:23 846这方面的文章园子里有几篇了,不过大家基本上都是参考了http: ... -
如何取到MOSS列表中item的链接
2008-12-04 18:07 778SPListItem的Url属性返回的不是绝对路径,形式如下面 ... -
MOSS程序中如何发Mail?
2008-12-09 10:42 755我们使用.NET类库中的API发Mail的时候,我们要配置他的 ...
相关推荐
在页面控件中,如果有多个自定义控件使用多个不同的控件来显示不同的数据结构,为了让这些页面控件能够在在页面上协调的工作,则需要使用控件状态来保护控件,同时,控件状态是不能被关闭的。同样,控件状态也有它的...
com全称是组件对象模型(compoment object model),他是一组规范,是MicroSoft创建的一组二进制和网络标准,用于解决两个组件之间的通信。 什么是com对象 com是面向对象的软件模型,com对象的概念有点类似于C++中...
该资料是《COM技术内幕——微软组件对象模型》一书的随书源代码 COM技术内幕——微软组件对象模型 基本信息 原书名: Inside COM: Microsoft's Component Object Model with Cdrom 原出版社: Microsoft Press ...
1、 将 ER 图转换成关系模型,判断关系模型中的各个关系(表)是第几范式,如果没有达到第三范式或 BC 范式,请进行规范化。完成数据库的逻辑结构设计。 2、 通过对象资源管理器实现关系模式的存储,包括确定主码、...
使用SharePoint JavaScript对象模型(JSOM)对SharePoint加载项中的网站属性,列表和列表项执行创建,读取,更新和删除操作。 适用于 SharePoint Online和本地SharePoint 2013及更高版本 先决条件 此示例需要满
用户可以选择目标数据库类型和输出选项来生成SQL文件。 从SQL文件到PDM文件:用户可以将现有的SQL脚本导入到PowerDesigner中,PowerDesigner会解析SQL语句并生成相应的PDM文件,包括表的定义、字段、索引等。
10.1 建立精粒度对象模型 10.2 建立粗粒度关系数据模型 10.3 映射组成关系 10.3.1 区分值(Value)类型和实体(Entity)类型 10.3.2 在应用程序中访问具有组成关系的持久化类 10.4 映射复合组成关系 ...
然后使用这些分类的像素生成图像的一个版本,其中每种独特类型的对象都以单独的颜色突出显示,称为颜色图。然后每个片段被分割成它自己的图像文件,可以下载到其他地方使用。随着后续图像的上传,它们将被添加到屏幕...
理解AutoCAD对象模型 访问对象层次 通过集合对象操作 理解属性和方法 理解父对象 定位类型库 在数据库中返回第一个图元 在方法和属性中使用变体 使用其它程序语言 第三章 控制AutoCAD环境 打开、保存和...
11.1.1 对面向对象模型的支持 11.1.2 对螺旋上升式开发过程的支持 11.1.3 对往返工程的支持 11.1.4 对团队开发的支持 11.1.5 对工具的支持 11.2 rational rose的使用 11.2.1 系统主菜单窗口 ...
第3课 学习Flash Player对象模型 3.1 面向对象编程 3.1.1 类 3.1.2 对象 3.1.3 属性 3.1.4 方法 3.1.5 静态成员 3.1.6 事件 3.2 了解内部ActionScript类 3.3 使用Math类的静态方法 3.4 创建和使用Date类的实例 3.5 ...
您可以扩展标准 TDLib 对象并添加一些计算属性或任何您想要的。 到处使用。Airgram 是一个与环境无关的库。它可以在浏览器和 Node.js 中工作。您可以编写 Telegram 客户端或将其用于 Telegram bot 后端。 更多详情...
第10章 用UML创建对象模型 154 10.1 什么是UML 154 10.2 类图的结构 155 10.3 属性和方法 156 10.3.1 属性 156 10.3.2 方法 157 10.4 访问指示 157 10.5 继承 158 10.6 接口 159 10.7 组合 160 10.7.1 ...
Wagtail快速创建提供了快捷方式链接,可从设置文件中指定的模型创建对象。 面板添加到管理主页,提供以下类型: 单击创建链接将为新项目提供父选项 在父页面上注意 Wagtailquickcreate需要在您希望包含的模型上...
"使用Visio进行数据库设计 " 内容提纲: 1、数据库模型的定义 2、VISIO中数据库模型的分类 3、建立逻辑模型 4、建立物理模型 5、Sql Server导入数据到Visio "VISIO提供了强大的数据库建模功能,利用VISIO可以很方便的...
ADO 的新增内容 ADO 入门 本地数据访问的解决方案 基本的 ADO 编程模型 ADO 编程模型详细资料 使用对象的 ADO 编程模型 ADO 对象模型总结 远程数据访问的解决方案 基本的 RDS 编程...
· 使用CLR寄宿、AppDomain、程序集加载、反射和C#的dynamic类型来构造具有动态扩展能力的应用程序 本书作者作者Jeffrey Richter,.NET和Windows编程领域当之无愧的大师和权威,以著述清楚明了,行文流水,言简意赅...
创建模型对象并检查验证。特征手动验证类型检查清洁物体安装$ npm install modela --save# or$ yarn add modela 然后,将其导入: // ES2015+import Modela from 'modela' ;// CommonJSvar Modela = require ( '...