54、Web服务与ASP.NET开发详解

Web服务与ASP.NET开发详解

1. 返回Web服务错误

当执行Web服务方法时出现异常情况,应向客户端返回Web服务错误。若在Web服务工作流中抛出未处理的异常,.NET异常将自动作为错误返回。除了这种自动行为,还可在工作流模型中显式声明发送错误。

这可通过 WebServiceFaultActivity 实现,该活动必须与 WebServiceInputActivity 关联。此活动包含一个 Fault 属性,用于标识与错误关联的.NET异常。在设计工作流时,必须确保只执行 WebServiceOutputActivity WebServiceFaultActivity 中的一个,不能在单个工作流实例中同时执行这两个活动,否则工作流将无法构建。

以之前实现的 MathServiceWorkflow 为例,其初始版本未对输入参数进行任何验证。若输入除数为零,将尝试进行除法运算。由于被除数和除数都定义为 Double 类型,浮点除以零将返回无穷大。此时,可能更希望收到一个Web服务错误来通知问题,而非无穷大的结果。

接下来,将修改 MathServiceWorkflow ,对输入参数进行简单验证。若除数为零,工作流将使用 WebServiceFaultActivity 返回Web服务错误;否则,将执行除法运算并将结果返回给客户端。

1.1 修改MathService

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值