2

Sharepoint で状態ワークフローを作成しました。

私の考えは:

1/ ワークフローが開始されると、ワークフローが開始されたリスト アイテムのコピーが作成されます。このコピーは、現在のサイト コレクション内の別の Web リストに作成されます。これは機能しています。

2/ 親アイテムの変更を監視し、それらをコピーされたアイテムに反映します - これは機能しています

3/ コピーされたアイテムの変更を監視し、それらを元のアイテムに伝播します - これは機能しません

IListItemServiceを使用しようとしていましたが、現在の Web とは異なる変更を監視できないようです。それを行う他の方法はありますか?

SharePoint 2010 Pluggable Workflow Services について考えていましたが、SPWorkflowExternalDataExchangeService メソッド CallEventHandler から派生した私のクラスでは、SPWorkflowExternalDataExchangeService.RaiseEvent の呼び出しが 1 回だけ行われた場合でも (これはカスタム イベント レシーバーから呼び出されました)、2 回呼び出されました。このソリューションの別の問題は次のとおりです。アプリ プールをリサイクルすると、RaiseEvent メソッドに必要な状態情報のリストを管理するシングルトン クラスが失われました。

4

1 に答える 1

1

この目的のためだけに、SharePoint に組み込まれたイベント メカニズムがあります。ワークフローを使用したり、アイテムをコピーしたりする必要はありません。

例: リスト アイテム イベント ハンドラの作成

于 2011-07-08T12:42:18.460 に答える