ビジネス プロセスを Windows ワークフローに移行することを検討しています。クライアント アプリは ASP/MVC になり、ワークフローは IIS 経由でホストされる可能性があります。
複数のワークフローで使用できる共通の「単純なタスク」アクティビティを作成したいと考えています。アクティビティ プロパティは次のようになります。
- 関連顧客
- 割り当てられたエージェント
- プロンプト (「PO #12345 を確認してください」)
- 「true」ボタンのテキスト (「Accept」)
- 「false」ボタンのテキスト (「拒否」)
- 結果を格納する変数
ワークフローがこのアクティビティにヒットしたら、タスクを db テーブルに配置する必要があります。Web アプリはテーブルに対してクエリを実行し、エージェントが完了する必要があるタスクのリストをエージェントに表示します。受け入れ/拒否を押したら、ワークフローを再開する必要があります。
それは私が立ち往生している最後のビットです。ワークフローを再開するには、DB テーブルに何を保存する必要がありますか? タスク テーブルが複数のワークフローで使用される場合、ワークフローをインスタンス化して再開するにはどうすればよいですか? ブックマークを見てきましたが、再開しようとしているワークフローの種類を知っていることを前提としています。リフレクションを使用する必要がありますか、または WF にワークフロー ID を渡してインスタンス化するメソッドがありますか?