0

我对 SharePoint 2010 还很陌生,我对 2007 有一些经验,但只是调试和修复了一些小错误。

假设我在 VS2010 中为 SP 2010 创建了一个新的解决方案,并且我添加了一个功能来创建一些列表定义以及这些列表定义模板的一些列表实例。这些都是通过 Schema.xml 声明的 =>

我成功部署并将一些项目添加到我的新列表中。

现在我想在我的列表中添加一些额外的列(字段),我将如何部署它们?

我不想在代码中创建它们,我希望有一个最新的解决方案,每个新开发人员都可以通过简单的部署创建一个正常运行的开发环境。

在这种情况下进行部署的正确方法是什么?

4

1 回答 1

1

如果您为列表定义了 schema.xml 文件,那么您确实希望使用列表定义中的集合来添加新列。您还希望确保您的列表由内容类型定义,允许重用。因此,在您的 schema.xml 文件中,它看起来像这样:

<List xmlns:ows="Microsoft SharePoint" Title="Test List" FolderCreation="FALSE" Direction="$Resources:Direction;" Url="Lists/Test-List" BaseType="0" xmlns="http://schemas.microsoft.com/sharepoint/">
  <MetaData>
    <ContentTypes>
      <ContentType ID="0x010068a2e063a1a74913a37ecdb61ab2c721" Name="Test" Group="Custom Content Types" Description="Test Description" Inherits="TRUE" Version="0">
        <FieldRefs>
          <FieldRef ID="{c2f80e7d-666e-4273-8b58-d5c8a13a9d6a}" Name="Col1" ShowInNewForm="TRUE" Required="TRUE" ShowInEditForm="TRUE"/>
          <FieldRef ID="{a84d620a-d42d-455c-8ef8-7e9f1d443250}" Name="Col2" Required="TRUE" ShowInNewForm="TRUE" ShowInEditForm="TRUE"/>
          <!-- Your new field refs here here -->
        </FieldRefs>
      </ContentType>
    </ContentTypes>
    <Fields>
      <Field ID="{c2f80e7d-666e-4273-8b58-d5c8a13a9d6a}" Type="Text" AllowDeletion="FALSE" Description="Key" AllowDuplicateValues="FALSE" EnforceUniqueValues="TRUE" Indexed="TRUE" Name="Col1" DisplayName="Col1" Group="Custom Columns" />
      <Field ID="{a84d620a-d42d-455c-8ef8-7e9f1d443250}" Type="Text" AllowDeletion="FALSE" Name="Col2" DisplayName="Col2" Group="Custom Columns" />
      <!-- Your new fields here -->
    </Fields>
    ...
  </MetaData>
</List>

不要忘记更改您的视图!

于 2012-07-11T01:27:24.293 回答