Skip to main content
 首页 » 编程设计

c#之当 WebClientProtocol Timeout 发生时会发生什么

2024年02月24日36zhengyun_ustc

我们有一个引用网络服务的客户端应用程序。我们已将 webclientprotocol 对象的超时属性设置为 50(毫秒),并希望观察发生了什么。我们绑定(bind)了一个长时间运行的 web 方法,该方法向客户端返回一个巨大的数据集。当存在默认值时,DataSet 已正确返回给客户端。当我们将其更改为 50(ms) 时,我们没有观察到任何东西。我们的假设是,由于发生超时,客户端会发生某种异常。谁能解释一下这里发生了什么

谢谢 拉吉

请您参考如下方法:

不幸的是,文档不清楚。当你说你“没有观察到任何东西”时,你到底是什么意思?代码是否永远挂起?是否抛出异常?推测未返回有效的数据集。

我期待一个TimeoutException被抛出,但我很惊讶这在您的客户端代码中并不完全明显。您没有吞下异常,对吗?

您是同步还是异步执行调用?如果它是异步的,我希望执行回调,然后在调用“EndXxx”时抛出异常。

我强烈建议您编写一个简短的控制台应用程序,它只是调用网络服务,看看会发生什么。