0

私のWorkflowFoundation4.0 RCアプリには、「Receive」と「SendReplyToReceive」のWCFメッセージングペアがあり、単純な要求/応答操作で正常に機能しますが、要求の検証と障害のある応答を実行しようとして問題が発生します。

WCFでは、スローカスタムフォールトコントラクトを作成できますが(SOAPフォールトを送信します)、組み込みのワークフローメッセージングアクティビティを使用してこれを実現する方法がわかりません。

私はデータ転送オブジェクトでしか応答できないようです(オブジェクトの選択で応答することさえできません)。

何か案は?(モーリス、もう一度私の一日を救ってくれませんか!?)

ありがとう!

4

1 に答える 1

2

これは可能であることがわかりましたが、私が望むほどには発見できません。MattMilnerとDaveCliffeがこれがどのように機能するかを教えてくれなかったら、私はこれを発見できなかったと思います。

秘訣は、同じ受信アクティビティに対して2番目のSendReplyを追加することです。この2番目のSendReplyは、FaultExceptionタイプの変数を返します。その目的は、正しい操作コントラクトの定義を支援することです。

エラーが発生した場合は、通常のワークフローのようにFaultExceptionをスローするか、障害を返してワークフローをそのままにしておくと、クライアントはそれをそのように認識します。

更新:このドキュメントで、新しいホワイトペーパー「ワークフローサービスで障害を送受信する方法」を確認してください。こちらのブログ投稿もご覧ください。

于 2010-03-18T20:31:31.907 に答える