在 SharePoint 2010 中创建自定义列表定义

在本练习中,您将在 Microsoft SharePoint 2010 中创建自定义列表定义,然后创建使用该列表时触发的事件接收器。若要完成此任务,您必须执行以下操作:

创建 SharePoint 列表定义项目

在该任务中,您将在 Microsoft Visual Studio 2010 中创建列表定义 SharePoint 2010 项目。

创建 SharePoint 项目

  1. 若要启动 Visual Studio 2010,请依次单击“开始”菜单、“所有程序”、“Microsoft Visual Studio 2010”和“Microsoft Visual Studio 2010”。

  2. 在“文件”菜单上,指向“新建”,然后单击“项目”。

  3. 在“新建项目”对话框窗口中的“已安装的模板”部分,依次单击“Visual C#”、“SharePoint”和“2010”。

  4. 从项目项中单击“列表定义”。

  5. 在“名称”框中,键入 Bugs,然后单击“确定”。

  6. 在 SharePoint 自定义向导中,键入要用于本练习的本地网站(例如 http://localhost/SampleWebSite)。

  7. 对于信任级别,请选择“部署为场解决方案”,然后单击“下一步”。

  8. 在“列表定义的显示名称是什么?”框中,键入 Bugs

  9. 在“列表定义的类型是什么?”下拉列表中,选择“自定义列表”。

  10. 选中“为此列表定义添加列表实例”复选框,然后单击“完成”。

自定义 SharePoint 列表定义

该任务将指导您完成自定义列表定义项目模板,具体方法是更改列表名称、其中存储的内容类型以及在新建窗体、编辑窗体和显示窗体时显示的字段。

自定义列表定义

  1. 在解决方案资源管理器中,展开“ListInstance1”,然后打开“Elements.xml”文件。

  2. ListInstance 元素中,将 Title 属性更改为 Bugs,并将 TemplateType 属性更改为 10001

  3. 在解决方案资源管理器中,在打开“Schema.xml”之前,打开“Elements.xml”。

  4. ListTemplate 元素中,将 Type 属性更改为 10001,并添加 DisallowContentTypes=”FALSE” 属性。

  5. 将以下 XML 插入 Elements.xml 文件中的 Elements 元素顶部,如图 1 所示。此 XML 说明了此列表存储的 Bug Item 内容类型。

    复制
    <!-- Describes content types. -->
    <ContentType
      ID="0x010089E3E6DB8C9B4B3FBB980447E313CE94"
      Name="Bug Item"
      Group="Custom Content Types"
      Description="Bug item content type."
      Version="0">
      <FieldRefs>
        <FieldRef ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" />
        <FieldRef ID="{cb55bba1-81a9-47b6-8e6c-6a7da1d25602}" />
        <FieldRef ID="{0248c82f-9136-4b3a-b802-d0b77280b3bc}" />
        <FieldRef ID="{aa4a82dd-5b32-4507-9874-4e1c7bca3279}" />
      </FieldRefs>
    </ContentType>
    <!--  End describes content types. --> 
    
  6. 将以下 XML 插入 Elements.xml 文件中的 Elements 元素顶部,如图 1 所示。此 XML 说明了 Bug Item 内容类型使用的字段。

    复制
    <!-- Describes fields in bug list. -->
    <Field Type="Note" DisplayName="Description" Required="FALSE" NumLines="6" RichText="FALSE" Sortable="FALSE" ID="{cb55bba1-81a9-47b6-8e6c-6a7da1d25602}" StaticName="BugDescription" Name="BugDescription" Group="Custom Columns" />
    <Field Type="Text" DisplayName="Project" Required="FALSE" MaxLength="255" ID="{0248c82f-9136-4b3a-b802-d0b77280b3bc}" StaticName="BugProject" Name="BugProject" Group="Custom Columns" />
    <Field Type="Text" DisplayName="Assigned To" Required="FALSE" MaxLength="255" ID="{aa4a82dd-5b32-4507-9874-4e1c7bca3279}" StaticName="BugAssignedTo" Name="BugAssignedTo" Group="Custom Columns" />
    <!-- End describes fields in bug list. -->
    
    图 1. 插入两部分代码后的 Elements.xml 文件
    插入代码后的 Elements.xml 文件
  7. 在解决方案资源管理器中,打开“Schema.xml”。

  8. EnableContentTypes=”TRUE” 属性添加到 Schema.xml 文件内的 List 元素中。

  9. 将以下 XML 插入 schema.xml 文件中的 ContentTypes 元素中,如图 2 所示。此 XML 说明了此列表存储的 Bug Item 内容类型。

    复制
    <!-- Start Add. -->
    <ContentTypeRef ID="0x010089E3E6DB8C9B4B3FBB980447E313CE94" />
    <!-- End Add. -->
    
    
  10. 将以下 XML 插入 Fields 元素中,如图 2 所示。此 XML 说明了此列表存储的字段。这些字段与您在上一步添加的内容类型中的字段直接相关。

    复制
    <!-- Start Add. -->
    <Field Type="Note" DisplayName="Description" Required="FALSE" NumLines="6" RichText="FALSE" Sortable="FALSE" ID="{cb55bba1-81a9-47b6-8e6c-6a7da1d25602}" StaticName="BugDescription" Name="BugDescription" Group="Custom Columns" />
    <Field Type="Text" DisplayName="Project" Required="FALSE" MaxLength="255" ID="{0248c82f-9136-4b3a-b802-d0b77280b3bc}" StaticName="BugProject" Name="BugProject" Group="Custom Columns" />
    <Field Type="Text" DisplayName="Assigned To" Required="FALSE" MaxLength="255" ID="{aa4a82dd-5b32-4507-9874-4e1c7bca3279}" StaticName="BugAssignedTo" Name="BugAssignedTo" -Group="Custom Columns" />
    <!-- End Add. -->
    
    图 2. 插入 ContentTypeRefs 代码和 Fields 代码后的 Schema.xml
    插入 ContentTypeRefs 后的 Schema.xml
  11. 将以下 XML 插入第二个视图中的 ViewFields 元素中,其中 BaseViewID="1" 如图 3 所示。此 XML 说明了此特殊视图中的哪些字段可见。BaseView 1 已设置为默认视图。此视图是新建字段将在其中显示的视图。

    复制
    <!-- Start Add. -->
    <FieldRef Name="BugDescription"></FieldRef>
    <FieldRef Name="BugProject"></FieldRef>
    <FieldRef Name="BugAssignedTo"></FieldRef>
    <!-- End Add. -->
    
    图 3. 字段 XML 插入后的 Schema.xml
    插入字段 XML 后的 Schema.xml
  12. 在解决方案资源管理器中,右键单击“Bug”节点,然后单击“部署”。

测试解决方案

在该任务中,您将通过将 Bug 添加到“Bug”列表来测试解决方案。

将项目添加到“Bug”列表

  1. 打开之前指定的网站。

  2. 在主页上的左导航窗格中,单击“Bug”列表。

  3. 在“列表工具”选项卡上,单击“项”,然后在“新建项”下拉列表上,单击“Bug 项”,如图 4 所示。

    图 4.“新建项”下拉列表中的“Bug 项”
    新项目列表中的错误项

    将显示“Bug - 新建项”屏幕,如图 5 所示。

    图 5. 新建 Bug 项对话框
    “新建错误项”对话框
  4. 在“Bug - 新建项”屏幕中,在“标题”框中键入 Bug01

  5. 在“说明”框中键入谁将跟踪此 Bug?,在“项目”框中键入编写开发人员文章,然后单击“保存”。

posted @ 2012-06-13 08:25  の0℃  阅读(641)  评论(0编辑  收藏  举报