0

ドキュメント ライブラリの列に特定の値が設定されている場合、サイト コレクションのドキュメント ライブラリから SharePoint 2010 の別のサイト コレクションのドキュメント ライブラリにドキュメントをプログラムで移動 (アーカイブ) する必要があります。

イベント レシーバーでこのシナリオのコードを記述できますか? 他に方法はありますか?

誰かが関連するコードやリンクを持っている場合は、共有してください。

前もって感謝します!

4

2 に答える 2

0

この記事によると、SharePoint のSPExportクラスを試すことができます。SharePoint アイテムのコピーまたは移動は、SharePoint UI で行う操作のほとんどが、この API を内部的に使用してタスクを達成しているように見えます。また、このアプローチは、一度だけ実行しようとしているか、反復プロセスになるかによって異なります。

于 2012-01-17T06:13:22.127 に答える
0

おそらくコピー操作を行ってから、元のファイルを削除できます。

あるサイトから別のサイトへのファイルのコピーについて説明している次のリンクをご覧ください。

http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spfilecollection.aspx

この例では、1 つのサイト コレクションを使用しています。ただし、ソース ドキュメントをバイト配列に変換すると、いつでもターゲット サイト コレクションをインスタンス化し、そのサイト コレクション内のドキュメント ライブラリにバイナリ データを追加できます。

確かに、コピー操作はイベント レシーバー内で機能するはずです。ただし、レシーバー内でファイルを削除しようとするとどうなるかはわかりません (同時実行の問題が発生する可能性があります)。削除が機能しない場合は、1 回限りのタイマー ジョブを起動してファイルを削除することを検討してください (これは別のプロセスで発生します)。

于 2012-01-16T14:22:31.530 に答える