セールス ファネルをエミュレートする WF4 サービスがあります。「登録」受信呼び出しから開始することで機能します。その後、10 の同様の段階があります (各段階で 2 つのレシーブで構成されます)。現在のステージが受信したデータを検証するまで、次のステージに進むことはできません。私が確信していないのは、クライアント アプリで許可されていない場合でも、受信操作が順不同で呼び出されないようにワークフローを作成するにはどうすればよいかということです。私のテスト コンソール アプリでは、ユーザーが任意の受信操作を呼び出せるようにしました (何が起こるかを見たかったからです)。
たとえば、最初に Register を呼び出し、次に "AddProspect" 受信の前に "AddQualification" 受信を呼び出した場合、テスト アプリは次のような例外を返します。
現時点では、識別子「1984c927-402b-4fbb-acd4-edfe4f0d8fa4」のサービス インスタンスに対する操作「AddQualification|{http://tempuri.org/}IZSalesFunnelService」を実行できません。操作が正しい順序で実行されていること、および使用中のバインディングが順序どおりの配信を保証していることを確認してください。
このことから、私が行う方法がわからない2つのことがあります。
まず、Fault Exception を処理してクライアントに意味のある方法で通知する方法と...
第 2 に、永続化 (およびプロパティの昇格) を使用しているため、順不同の呼び出しを行うと、昇格されたプロパティがアンロードされます。クライアントが例外を受け取った後、再度昇格されることはありません。
何かご意見は?