VS2010 でリスト スキーマ定義とリスト インスタンスを作成しました。リスト定義とインスタンスの両方を展開する機能と、新しいサブ サイトごとに新しい機能をアクティブにする機能 stappler があります。
私のリスト定義 schema.xml は次のとおりです。
<Fields>
<Field Name="StartDate" Type="DateTime" Required="FALSE" DisplayName="Start Date" StaticName="StartDate" ID="9ea1256f-6b67-43b0-8ab7-1d643bf8a834" SourceID="http://schemas.microsoft.com/sharepoint/v3" ColName="datetime1" RowOrdinal="0" />
<Field Name="EndDate" Type="DateTime" Required="FALSE" DisplayName="End Date" StaticName="EndDate" ID="900503fa-4ab1-4938-be75-b40694ab97b6" SourceID="http://schemas.microsoft.com/sharepoint/v3" ColName="datetime2" RowOrdinal="0" />
サイト定義を使用して正常に展開し、新しいサイトを作成すると、リストが正常に作成され、すべてが機能します。
リストに別のフィールドを追加したいので、Visual Studio 2010 に戻ってリスト定義 schema.xml を編集し、メタデータ フィールド セクションに別のフィールドを追加します。
schema.xml は次のようになりました。
<Fields>
<Field Name="StartDate" Type="DateTime" Required="FALSE" DisplayName="Start Date" StaticName="StartDate" ID="9ea1256f-6b67-43b0-8ab7-1d643bf8a834" SourceID="http://schemas.microsoft.com/sharepoint/v3" ColName="datetime1" RowOrdinal="0" />
<Field Name="EndDate" Type="DateTime" Required="FALSE" DisplayName="End Date" StaticName="EndDate" ID="900503fa-4ab1-4938-be75-b40694ab97b6" SourceID="http://schemas.microsoft.com/sharepoint/v3" ColName="datetime2" RowOrdinal="0" />
<!-- New Field -->
<Field Name="TestRedeploy" Type="Text" Required="FALSE" DisplayName="TestRedeploy" StaticName="TestRedeploy" RichText="True" Sortable="FALSE" ID="A5656659-CD3E-4C84-AEAC-554DCE25434B" SourceID="http://schemas.microsoft.com/sharepoint/v3" ColName="ntext3" RowOrdinal="0" />
</Fields>
ビルドとデプロイは成功しましたが、リスト設定で新しい列が追加されたかどうかを確認すると、すべての列が削除されていることがわかりました。schema.xml を使用して新しい列をデプロイする方法を教えてください。