MVC 3アプリケーションで永続化可能なワークフローを実行していますが、うまくいきますが、ワークフローが完了するとWorkflowApplicationCompletedExceptionがスローされます。ワークフローは正常に完了し、最後に実行されたアクションとインスタンスがデータベースから削除されます。MVCで持続可能なワークフロー - 実行時に例外が発生しました
私は今まで答えを探していなかったので、例外の原因となっているアイデアは高く評価されます。私の現在の回避策は例外をキャッチして、OnCompleted-Eventのためにそこに自分のものを置くことです。
私は単純にWorkflowApplicationを作成し、読み込んでブックマークを再開します。
ヒントやご意見をいただければ幸いです。 おかげ
application.Load(new Guid(basket.StandardFields.Settings));
application.ResumeBookmark(application.GetBookmarks().First().BookmarkName, WorkflowInputs);
application.PersistableIdle = delegate(WorkflowApplicationIdleEventArgs e)
{
if (e.Bookmarks != null && e.Bookmarks.Count > 0)
{
_viewName = e.Bookmarks[0].BookmarkName;
}
syncContext.OperationCompleted();
return PersistableIdleAction.Unload;
};
application.Completed = delegate (WorkflowApplicationCompletedEventArgs e)
{
CompleteWorkflow(syncContext);
};
application.SynchronizationContext.OperationStarted();
try
{
application.Run();
}
catch(WorkflowApplicationCompletedException)
{
CompleteWorkflow(syncContext);
}
編集
application.ResumeBookmark(ブックマーク、WorkflowInputs)はワークフローを開始し、活動を完了し、私は実行を呼び出すときに、それはそれはすでに完了しています不平を言うようです。しかし、ワークフローが再開されたときに実行を呼び出さなければ、ブラウザは決して情報を取得せず、リフレッシュさえも待機状態から外すことができないため、無限に待っていると思います。
ありがとう、私は仕事中に戻ってきたときにそれを試してみます。私はそれがブックマークを再開し、ワークフローの次のアクションを完了するが、とにかく例外をスローすると奇妙だと思う。 – Nischo
@nischo hmmm、私はあなたのエラーが他の場所にあると思う...あなたはデバッグして見つける必要があるそれが起こったときに何が起こっているのかを調べてみましょう。 – Will
今、私は混乱しています...それはresumebookmarkがワークフローを開始するようですが、何とか実行する必要があるか、バック? – Nischo