Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

时间:2022-03-20 17:06:35

Sharepoint2010给我们带来的好处之一就是极大提高了Feature的版本管理能力,我们能够通过Visual Studio2010的帮助来对开发的Feature进行版本控制和升级。此处我们以Content Type为例来演示Content Type Feature的版本控制与升级功能。

这一篇我们要做的事就是用Vs2010开发一个Feature,赋予其一个版本号并部署到我们的网站上,而下一篇我们会描述如何修改并升级这个Feature。下面直接进入我们操作步骤:
1.使用Visual Studio2010新创建一个空的Sharepoint项目("Empty Sharepoint Project")并命名为 "TestUpgradableCT"。这一个Farm的solution,把此项目关联到你自己的测试网站地址上,此处我们的测试网站为:

http://sd1-sp1dev:2100/sites/SPTestSite

 

Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

指定Farm还是Sandbox


Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

 

2.给项目TestUpgradableCT添加新的Content Type项。命名为"The Upgradeable Content Type",Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

开发环境会跳出一个窗口,让你指定此Content Type项的Parent类型,选择"Document"

Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

Vs2010会在你的项目中添加The Upgradable Content Type项,并打开它的Element.xml内容,如下图:

Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

 

 

3、修改Element.xml的内容如下:

<? xml version="1.0" encoding="utf-8" ?>
< Elements  xmlns ="http://schemas.microsoft.com/sharepoint/" >
  
< ContentType  ID ="0x0101000dca569159f044bba9feb7f6d1abad4c"
               Name
="ZLUpgradeableCT"
               Group
="A feature upgrade attempt"
               Description
="The upgradeable content type"
               Version
="0" >
    
< FieldRefs >
       
< FieldRef  ID ="{8C8D6C5E-F9AB-4B48-86B1-0126FAB112F4}" />
    
</ FieldRefs >
  
</ ContentType >
  
< Field  ID ="{8C8D6C5E-F9AB-4B48-86B1-0126FAB112F4}"
        Name
="Note1"
        StaticName
="Note1"
        DisplayName
="Note on version 1"
        Type
="Note"
        Group
="A feature upgrade attempt" >
  
</ Field >
</ Elements >

此步骤是在我们刚才创建的Content Type中添加一个Field,此Field为Note类型,在此处我们对此Field的相关属性进行了设置(Name, StaticName,DisplayName,Group),并通过<FieldRefs>节把它引用到我们的ContentType中。 Field的ID可以使用Vs2010的Tools-->Create Guid工具来生成。而Group属性则指定了我们创建的ContentType属于哪一个Group,我们将在后面要用到它来快速定位我们的ContentType。
4、修改项目的Feature版本。
双击你的Feature节点,修改它的版本号为 1.0.0.0,默认此栏为空,空的意思就是默认版本为0.0.0.0

Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

然后Build并部署此项目。
5、查看结果
打开我们的网站,我们准备把此网站的Shared Documents拿来测试。

Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

 

点击Shared Docuemnts,选择Library Tools的Library---Library SettingsSharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

点击进入Advanced Setting页,设置Allow management of content types为Yes.Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

 

设置后你就可以在此Document Library Settings 页看到Content Types栏目,Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

 

选择Add from existing site content types功能项,进入Select Content Types设置页,在此页的Group下拉框中选择A feature upgrade attempt,我们在此处可以看到我们刚才用VS2010开发的Content Type,它的名字是"ZLUpgradeableCT",直接把它添加到右边列表框中。

Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

回到我们Shared Documents,为它添加新的文档。此时可以看到多出了我们创建的Content Type

Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

 

打开新建文档可以看到的确起作用了,新建文档要求你输入相关的内容

Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

保存后,通过Add document功能打开添加文档窗口。此窗口中显示出我们刚才创建新文档时输入的内容。

Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)

 

保存后可看到结果。

 

 Sharepoint学习笔记---Upgrading&Version版本升级:Content Type Feature(一.创建和部署一个基本的Content Type Feature)