我从我的业务流程连接到一个简单的WCF服务,WCFservice抛出一个带有自定义消息的system.exception。当我在业务流程范围的末尾添加异常处理程序,并将Exception Object Type属性设置为“System.Exception”时,我无法构建项目,我得到的错误是
System.Exception must be XML serializable to be a message part type
我尝试过抛出System.Xml.XmlException,但错误仍然存在。我没有使用故障。
使用VS2012和BizTalk server 2013.
问题是什么?
答案 0 :(得分:0)
这里更好的选择是你的WCF服务在这种情况下抛出SOAP Fault。这可以是一般的SOAP Fault或类型的错误。
有关SOAP故障的更多信息,请参见此处:http://www.w3schools.com/webservices/ws_soap_fault.asp
然后,在处理业务流程中的SOAP错误时,最佳做法是通过设置传播错误消息来执行此操作:
如何做到这一点,在这篇博文中有清楚的描述:http://www.codit.eu/blog/2012/01/13/best-practices-for-handling-web-service-exceptions-in-biztalk-server/
希望这有帮助。