[英]Raise the time-out for a single webservice
我的Web配置如下所示:
<system.web>
<compilation debug="false"/>
<httpRuntime executionTimeout="90"/>
</system.web>
这适用于大多数Web服务函数,但是一个函数的查询运行时间很长(5分钟),并且在完成之前将停止。 是否可以单独为此Web服务将运行时设置为5分钟?
例如:
MyWebServices.asmx?op=WS_LongMethod --> Timeout of 5 minutes
我已经考虑过运行数据库查询async(fire and forget),但是通过ODBC使用sybase / oracle似乎不可能。
是的,你可以这么做。 在web.config中,您需要添加<location/>
元素:
<location path="Path_To_Your_Service.asmx">
<system.web>
<httpRuntime executionTimeout="90"/>
</system.web>
</location>
<location/>
元素为您提供了一种机制,您可以将web.config属性应用于站点中的特定路径。
您可以使用Web服务中的委托异步调用另一个方法。 在此方法中,您可以执行数据库IO。 这意味着您将在操作完成之前返回调用者,但是如果您生成唯一ID并存储与该ID相关的任何信息,则可以在以后检索它。
你检查过web服务的.Timeout属性了吗?
指示XML Web服务客户端等待同步XML Web服务请求完成的时间(以毫秒为单位)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.