自分のサイトでperson.aspxページをプログラムで削除するにはどうすればよいですか?
-
16-10-2019 - |
質問
したい 交換 ootbのperson.aspxページ私のサイトホストポータルSharePoint 2010
次の場合、それは完全に正常に機能します
ケース1:
- 使用してサイトを開きます SharePoint Designer 2010
- 消去 「すべてのファイル」の下のperson.aspxファイル
- 新しいperson.aspxファイルに必要な変更を提供するモジュールコンポーネントを使用してソリューション/機能を展開する
また
ケース2:
同じ機能とモジュールコンポーネントを使用してプロジェクトを「展開」します Visual Studio 2010, 、vs 2010が競合を検出し、これは既存のphers.aspxファイルで「削除」を効果的に実行するため
でも
WSPパッケージと中央管理を使用してまったく同じものを展開すると、既存のperson.aspxを「削除」して新しいperson.aspxファイルをプロビジョニングすることができないため、機能しなくなりました。
誰かが助けてくれませんか?
このファイルを削除できるようになったSPデザイナーと2010年のvs 2010が実行する魔法のコードは何ですか?
解決
既存のページを削除するために機能レシーバーを追加して(featureactivatedで)試してみることができますが、これはファイルがプロビジョニングされた後にのみ実行されます。これを回避するには、2つの機能を作成できます。1つは表示され、1つは隠されています。可視機能には、2番目の非表示機能にアクティベーション依存関係があります。つまり、表示される機能をアクティブにすると、隠された機能が最初に自動的にアクティブになります(参照 http://msdn.microsoft.com/en-us/library/aa543162.aspx) - これを使用して、前述のように機能レシーバーを使用してファイルを削除できます。その後、目に見える機能がその後アクティブになることを期待します。試してみてくださいが、それはあなたのためにうまくいくかもしれないと思います。