SPFILE.CUSTOMIZESPAGESTATUSが「なし」のため、SharePoint 2010の展開はマスターページを更新しません。
-
10-12-2019 - |
質問
以下のシナリオを持っていて、誰かが助けになることを願っています:
- Original 2007 Publishingサイトコンテンツデータベース2010 にアップグレードされたデータベース
- 使用中のページテンプレートは、手動で追加され、サイト定義の一部ではないため、ゴーストされたことがないため、spfile.customizedPageStatusプロパティは 'none' に設定されています。
- 最新のテンプレートはVS2010展開パッケージにあります。これは機能を介してデプロイされています(前のポイントによる展開は失敗します)
- CustomizedPageStatusが 'None'に設定されているため、PowerShellまたはSPFile.revertStream()を介してCustomizedPageStatusを変更できませんでした。このメソッドは、プロパティが 'none' の場合はデザインで例外をスローします。
理想的には、展開はすべてのファイルを更新するように、プロパティを「未サステイマ化」に更新したいと思います。
Elements.xmlファイルのエントリは次の形式です。
.<File Url="CustomMasterPage.master" Type="GhostableInLibrary" />
あらゆる援助に感謝します。
解決
次のツールを使用して一時的な解決策を見つけました:
> http://spghostfilesmanager.codeplex.com/
私たちはその機能に私たちのページテンプレートを名前に変更し、それらを通常どおりに展開してから、Ghost Files Managerを新しいものに「ワイヤアップ」させます。
正直になるためのハックの少しですが、それは私たちが続けることを可能にしました。
誰かがこれを達成する方法についてより良い提案をしているならば、投稿してください!
他のヒント
インストールされている場合はSharePoint Designerを使用することもできます。
マスターページギャラリーの関連ページに移動して、青い「!」がある場合その横にあるアイコン、「サイト定義へのリセット」をクリックしてください。これはhiveから関連するページをリロードします。
しかし、現在のバージョンのページに対して行われたすべてのカスタマイズは失われます!
私は(SharePintDesigner) その後、解決策をもう一度展開する(VisualStudio)
それは私のために働いた! 「展開競合解決」が「なし」に設定されていることをVisual Studioで保証するだけです。
所属していません sharepoint.stackexchange