2010-03-16 4 views
0

내 워크 플로우 파운데이션 4.0 RC 응용 프로그램에서 간단한 요청/응답 작업으로 잘 작동하는 '수신'및 'SendReplyToReceive'WCF 메시징 쌍이 있는데, 요청에 대한 유효성 검사를 수행하고 오류로 응답하려고 시도하는 데 문제가 있습니다.Windows 워크 플로 파운데이션 4.0 및 WCF 웹 서비스 오류 (비누 오류)

WCF에서 SOAP 오류를 보낸 사용자 지정 오류 계약을 만들 수 있지만 기본 제공 워크 플로 메시징 작업으로이 작업을 수행하는 방법을 알 수 없습니다.

나는 데이터 전송 객체로만 응답 할 수 있습니다 (객체 선택으로도 응답 할 수 없음).

아이디어가 있으십니까? (내 하루를 다시 살릴 수 있을까? 모리스!?)

고마워!

답변

2

이것이 가능하지만 실제로는 발견하기가 어렵습니다. 매트 밀너 (Matt Milner)와 데이브 클리프 (Dave Cliffe)가 어떻게 작동하는지 표시하지 않았다면 나는 이것을 발견했을 것입니다.

트릭은 동일한 수신 활동에 대해 두 번째 SendReply를 추가하는 것입니다. 이 두 번째 SendReply는 FaultException 유형의 변수를 반환하며 올바른 연산 계약을 정의하는 데 도움을줍니다.

일반적으로 워크 플로를 종료하거나 오류를 반환하고 워크 플로를 그대로 두는 것처럼 오류가 발생하면 FaultException을 던지거나 클라이언트에서 그대로 표시됩니다.

업데이트 : this document에 새 백서 "워크 플로 서비스에서 오류를 보내고받는 방법"을 확인하십시오. 내 블로그 게시물 here도 참조하십시오.

+0

좋은 물건 - 고마워! – Lygpt