質問

コンテンツタイプのリストがあります。このコンテンツタイプにフィールドを追加しようとしているので、ライブラリで使用できるようにします。 これは私がContent TypeにElements.1.0.0.1.xmlファイルを追加しました:

    <?xml version="1.0" encoding="utf-8" ?>
    <Elements xmlns="http://schemas.microsoft.com/sharepoint/">
     <Field ID="{63F353F8-F206-4BB0-A3C1-1B8FA9E43C63}" DisplayName="Dull field" Name="DULLfield" Type="Text" Group="RM" Overwrite="TRUE" />
    </Elements>
.

それから私はfeature.template.xmlにアップグレードアクションを追加しました:

    <UpgradeActions>
    <VersionRange BeginVersion="0.0.0.0" EndVersion="10.0.0.0">
      <ApplyElementManifests>
        <ElementManifest Location="MyContentType\Elements.1.0.0.1.xml"/>
      </ApplyElementManifests>
      <AddContentTypeField ContentTypeId="0x0120D520005C2CAF72F4414435A29E0ACDC59F28D9" FieldId="{63F353F8-F206-4BB0-A3C1-1B8FA9E43C63}" PushDown="TRUE"/>
    </VersionRange>
  </UpgradeActions>
.

それから私はエラーや警告なしで次のスクリプトを実行します。

    Update-SPSolution -Identity sharepointproject1.wsp -LiteralPath  "C:\SharePointProject1.wsp" -GA
CDeployment
.

今すぐサイト列に新しいフィールドを見ることができますが、コンテンツタイプでは表示されません。PushDown="TRUE"パラメータがコンテンツタイプに新しいフィールドを追加する必要があるとしますが、そうではありません。私は何が恋しいですか?

======= update======= *です バージョン= 1.0.0.0を使用した展開ソリューション、次にバージョンを2.0.0.0に変更し、WSPファイルをローカルディスクに公開し、UPDATE-SPSOLUTIONを実行します。PowerShell

を介してソリューションバージョンを取得するとき
$f = Get-SPFeature | where{$_.DisplayName -eq '
myfeature'}
$f.version 
.

それでも1.0.0.0です。 WSPファイル内のWSP Feature.xmlファイルを開きました - 正しいバージョン2.0.0.0

があります。

何が恋しいですか?

役に立ちましたか?

解決 2

私はついにアップグレードされました。これは私が進めた行動のリストです:

1.UPDATE SPSOULOTION(.wspファイル):

   Update-SPSolution -Identity SharePointProject58.wsp -LiteralPath "<Path>" -GACDeployment
.

2.Uprade機能:

    $feature = $web.Features | where{$_.Definition.DisplayName -eq '*myfeature*'} 
$feature.Upgrade($true)
.

と最も重要な部分:あなたが解決策を更新するたびにコンソールを再起動する必要があります。それ以外の場合は古いバージョンにスティック! これは良い記事件名に。

他のヒント

機能を機能させる、versionRange IDにバージョン管理をし、次にBagneRVersionプロパティ。

exemple:

<Feature xmlns="http://schemas.microsoft.com/sharepoint/" Version="10.0.0.0">
  <UpgradeActions>
    <VersionRange EndVersion ="10.0.0.0">
      <ApplyElementManifests>
        <ElementManifest Location="MyContentType\Elements.1.0.0.1.xml"/>
      </ApplyElementManifests>
      <AddContentTypeField ContentTypeId="0x0120D520005C2CAF72F4414435A29E0ACDC59F28D9" FieldId="{63F353F8-F206-4BB0-A3C1-1B8FA9E43C63}" PushDown="TRUE"/>
    </VersionRange>
  </UpgradeActions>
</Feature>
.

それが役立つことを願っています。

ライセンス: CC-BY-SA帰属
所属していません sharepoint.stackexchange
scroll top