基礎となるリストを変更せずにリストビューをアップグレードします
-
16-10-2019 - |
質問
生産環境に関するビューを更新する最良の方法は何ですか? SharePointソリューションの2番目のバージョンをロールアウトし、リストのビューを追加/変更すると仮定しますが、生産データが含まれているため、リストを再配置することはできません。
SharePointオブジェクトモデルを介してビューを更新することをお勧めしますか?または、基礎となるリストに触れずにビューを更新するより良い方法はありますか?
アドバイスをありがとう。
アップデート:
アンダース・ラスクの答えを受け入れました。しかし、私はまだビューアップグレードのためのよりシンプルな(より効率的な)アプローチを探しています。これに新しいソリューションがある場合は投稿してください...ありがとう
解決
これを行うには、プログラムでプログラムでビューを追加することをお勧めします。これを機能コールアウトで行う必要があります。後で新しいサイトで両方の機能をアクティブにするか、農場を再現する必要がある場合、レース条件を回避するためにビューを作成した元の機能に頼りになります。
一般に、私はリストやビューをできるだけ宣言的に行うことから遠ざかりました。カムルスピットでいっぱいのバケツと比較したコードの唯一のコード;-)
プログラムでビューを追加することは使用されます spviewcollection.add 方法。 SharePoint Dev Wikiの良い例: オブジェクトモデルを使用してプログラムでリストビューを作成します
機能レシーバーからのコールアウトの作成に関する詳細:http://www.sharepointdevwiki.com/display/public/how+ to+add+ a+feature+receiver+to+a+feature
編集:SharePoint 2010はバージョンされた機能をサポートしています。これにより、機能バージョンに基づいて更新を分岐できます。 1つのオプションは、既存のコンテンツタイプにフィールドを追加することです。
HTH ANDERS RASK
他のヒント
アプリケーションが何であるかによって、生産されると、アプリケーションはユーザーアクティビティのために動的に変更されます(まったく成功していると仮定します)。なぜSharePoint UIに行って、そこでビューに変更を加えないのですか?これは過剰な開発者の考え方ですか、それとも要件が欠落していますか?
また、開発/ステージング環境のビューを作成してから、ASPXファイルをProductionにコピーすることもできます。正しいリストGUIDを必ず設定してください。