65.9K
CodeProject 正在变化。 阅读更多。
Home

SharePoint 2010 - 创建列表定义和实例

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.55/5 (11投票s)

2012 年 6 月 28 日

CPOL

5分钟阅读

viewsIcon

120482

downloadIcon

992

如何使用 SharePoint 用户界面和 Visual Studio 2010 创建列表定义和列表实例。

引言

在本文中,我们将介绍如何使用

  • SharePoint 用户界面
  • Visual Studio 2010

为什么我们需要列表定义?

我们需要列表定义来从中创建多个列表实例。如果我们处理的是相同列类型的捕获数据,这是最好的方法。

SharePoint 的内置列表定义具有相同的功能。例如:联系人列表、任务列表等。同样,根据您的项目领域,将常用列表格式转换为列表定义可能是一个好主意,这样您就可以轻松创建多个实例。

例如:可以创建一个计算机配置列表定义,用于稍后创建实际列表,如台式机和笔记本电脑。

场景

在此示例中,我们正在尝试捕获计算机配置列表定义。以下是它应该包含的字段信息

字段 描述

制造商 (Manufacturer)

文本字段

模型

文本字段

CPU 品牌

选项字段,值为 Intel、AMD、Other

CPU 速度

数字字段,速度单位为 GHz

RAM 大小

数字字段,大小单位为 GB

价格

表示价格的数字字段

描述

有关其他外围设备的更多信息

解决方案 1:使用 SharePoint 用户界面创建列表定义

第 1 步:创建一个新列表

打开一个 SharePoint 网站,创建一个名为“Desktops”的新列表。您可以从自定义列表开始。

创建后的列表列如下

默认视图中的列表如下

第 2 步:模板化列表

现在我们可以继续使用 SharePoint 的列表模板功能创建列表定义。转到“列表设置”,然后点击“另存为模板”链接。

在出现的对话框中,输入模板名称,例如:Computer Configuration Template。

您可以将“包含内容”复选框保持未选中状态。输入详细信息后,点击“确定”按钮。您将收到以下消息。

第 3 步:访问库

新创建的模板存储在库中。点击上方屏幕中的链接,即可查看。

您还可以从以下路径访问列表模板库:网站操作 > 网站设置 > 库。

第 4 步:从模板创建新列表

现在我们准备测试上述模板。尝试创建一个新列表(列表 > 创建),在选择对话框中,您可以看到新模板,如下所示

现在您可以从此模板创建多个列表实例。您也可以将此模板上传到另一个 SharePoint 网站以使用它创建列表实例。

解决方案 2:使用 Visual Studio 2010 创建列表定义

要继续此部分,您需要 Visual Studio 2010 的 SharePoint 开发人员工具。我希望您已经安装了它;否则,您可以从此处下载。

第 1 步:创建项目

打开 Visual Studio,然后从“列表定义”模板创建一个新项目。

在下一页,选择“场解决方案”选项。

在下一页,输入详细信息,如下所示,然后点击“完成”按钮。

请注意,由于我们要为列表定义创建自定义列,因此需要从自定义列表派生。

现在,在解决方案资源管理器中,您可以将列表定义名称重命名为ComputerConfiguration

关于 XML 文件

正如您所见,列表定义有两个 XML 文件

  • Elements.xml
  • Schema.xml

Elements.xml 包含列表定义的一般信息,如名称、描述、快速启动等。Schema.xml,顾名思义,包含列表定义的实际元数据信息。

以下是Elements.xml 的 XML 内容。

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
    <!-- Do not change the value of the Name attribute below. If it does not 
         match the folder name of the List Definition project item, 
         an error will occur when the project is run. -->
    <ListTemplate
        Name="ComputerConfiguration"
        Type="10000"
        BaseType="0"
        OnQuickLaunch="TRUE"
        SecurityBits="11"
        Sequence="410"
        DisplayName="Computer Configuration"
        Description="Computer Configuration"
        Image="/_layouts/images/itgen.png"/>
</Elements>

您可以修改上述列表定义以更改显示名称和描述。

第 2 步:为列表定义创建字段

列表的字段信息已在文章开头提到。在继续之前,请看一看。

字段和 FieldRef

为了添加列表定义,我们必须使用以下标签

  • 字段
  • FieldRef

Field 标签用于表示新字段信息,如名称、显示名称、ID、类型等。FieldRef 标签用于使用名称引用现有字段。

打开Schema.xml 并添加以下字段。

<Fields>
  <Field ID="{24B3F6C1-B75B-4821-A466-C1E979B87B81}" Name="Manufacturer" DisplayName="Manufacturer" Type="Text" Required="TRUE"/>
  <Field ID="{24B3F6C1-B75B-4821-A466-C1E979B87B82}" Name="Model" DisplayName="Model" Type="Text" Required="TRUE"/>
  <Field ID="{24B3F6C1-B75B-4821-A466-C1E979B87B83}" Name="CPUMake" DisplayName="CPU Make" Type="Choice" Required="TRUE">
    <CHOICES>
      <CHOICE>Intel</CHOICE>
      <CHOICE>AMD</CHOICE>
      <CHOICE>Other</CHOICE>
    </CHOICES>
  </Field>
  <Field ID="{24B3F6C1-B75B-4821-A466-C1E979B87B84}" Name="CPUSpeed" DisplayName="CPU Speed (GHz)" Type="Number"/>
  <Field ID="{24B3F6C1-B75B-4821-A466-C1E979B87B85}" Name="RAMSize" DisplayName="RAM Size (GB)" Type="Number"/>
  <Field ID="{24B3F6C1-B75B-4821-A466-C1E979B87B86}" Name="Price" DisplayName="Price" Type="Number"/>
  <Field ID="{24B3F6C1-B75B-4821-A466-C1E979B87B87}" Name="Description" DisplayName="Description" Type="Number"/>
</Fields>

注意:您可以参考本文附带的源代码。

选项字段类型用于在运行时创建下拉列表。更多字段类型可以在“参考”链接中找到。

第 3 步:尝试测试部署

现在您可以构建项目,如果成功,请尝试部署。部署后,尝试打开 SharePoint 网站并创建一个新列表。在模板对话框中,您可以看到我们的“计算机配置”项。

您可以尝试从中创建测试实例。您会注意到以下情况

  • 在项目视图中只有一个列
  • 在新项目对话框中只有一个列

我们添加的字段在哪里?

所以现在我必须回答,到目前为止我们只创建了字段。我们需要在适当的部分添加字段引用才能看到所需的列。

请注意,列表中可能有 50 个字段,我们只能在视图中显示所需的五个字段。我们也可以在新建/编辑对话框中隐藏其他计算/自动分配的字段。

第 4 步:将字段添加到视图

现在我们可以将所需的字段添加到列表实例的视图中。

  • 制造商 (Manufacturer)
  • 模型
  • CPU 品牌
  • 价格

为了实现这一点,我们需要使用如下所示的 FieldRef 标签。

<View BaseViewID="1" Type="HTML" WebPartZoneID="Main" 
    DisplayName="$Resources:core,objectiv_schema_mwsidcamlidC24;" 
    DefaultView="TRUE" MobileView="TRUE" MobileDefaultView="TRUE" 
    SetupPath="pages\viewpage.aspx" 
    ImageUrl="/_layouts/images/generic.png" Url="AllItems.aspx">
<Toolbar Type="Standard" />
<XslLink Default="TRUE">main.xsl</XslLink>
<RowLimit Paged="TRUE">30</RowLimit>
<ViewFields>
  <FieldRef Name="Model"></FieldRef>
  <FieldRef Name="CPUMake"></FieldRef>
  <FieldRef Name="Price"></FieldRef>
</ViewFields>

请在视图中添加粗体部分,并将 BaseViewID 设置为 1。

现在构建项目并部署。转到 SharePoint 网站并刷新我们创建的列表。您可以看到上面三个字段已显示。

参考文献

摘要

在本文中,我们探讨了如何使用 SharePoint 用户界面和 Visual Studio 2010 创建列表定义和列表实例。附件包含我们讨论的源代码。

© . All rights reserved.