buser 发表于 2015-9-27 07:22:40

Sharepoint学习笔记—Site Definition系列-- 4、相对快捷地创建List Definition的Schema.xml文件

  在上一篇我们大致分析了一个List Definition的结构与内容,里面有个关健的文件就是Schema.xml,我们看到,这个文件比较复杂,在使用VS2010的模板时,VS2010自动为我们创建了这个文件,可有时候,我们可能会需要人为介入创建或修改Schema.xml,这可就显得比较麻烦了。有没有办法让这个工作变得更容易和快捷一些呢?这里描述两个办法:
一、是使用List Template
首先在你的Sharepoint网站上手工创建你想要的List,完成相应的设置(eg:各种View,SiteColumns,Fields等等),成型后,在Sharepoint的操作界面上进入此List的操作界面,把它保存成Template以供使用。
  这里,为了比较差异,我们就直接使用上一篇我们根据List Definiton创建的那个List实例来保存为Template。
  首先选中那个List 实例,然后点击Library Settings:

  进入Library Settings的设置界面后,选择Save document library as template
  

  
  输入必要的参数,然后保存确定


  
  系统会提示你进入Gallery中查看

  
  可以在Gallery中看到我们刚才创建的List Template.

  
  
  我们可以点击并下载此List Template,把它保存到我们指定的文件夹中,此文件会保存为.stp格式

  
  把此文件的后缀名改为cab,然后解压,可以看到里面其实就是一个manifest.xml文件,使用VS2010打开此文件查看,可以看到此文件的基本结构如下

  
  可以看到,相应段的内容与我们上篇文件的Schema.xml的内容很相似,把它Copy到我们自定义的Shcema.xml,然后我们就可以以此为基础进行修改了。

  
  注意,里面的内容不能照抄照搬,要结合你自己的需求以及参照相关样本边试边改。
  
二、使用Site Template                                             
  我们也可以通过Site Template来帮助我们创建Schema.xml,步骤如下
  首先也是通过SiteAction进入Site Settings界面

  然后选择Save Site as Template

  输入必要的参数,然后保存

  系统会提示成功,并提示你是否进入Solution Gallery

  进入Solution Gallery可以看到我们创建的Template,选择并下载保存它

  与List Template不一样的是,Site Template会保存为.wsp格式

  把Site Template下载到指定的文件夹后,打开我们的VS2010,新建一个项目,选择Import Sharepoin Solution Package模板

  选择Farm模式

  然后系统会提请你Import哪个Sharepoint Solution,请到你刚才保存Solution的文件夹,找到那个Solution并Import它

  找到并选中你关心的那个List实例

  系统会提示是否包括它自动探测到的相关联的其它内容,选择Yes

  系统建立如下

  
  找到相关内容进行Copy与Paste,然后以此为基础创建自己的Schema.xml。
  
  
  
  
  
  
  
  
  
  
页: [1]
查看完整版本: Sharepoint学习笔记—Site Definition系列-- 4、相对快捷地创建List Definition的Schema.xml文件