我有一个WCF服务方法,需要执行超过两个小时(运行一些报告)。我该如何确保它不会因为执行时间而超时?我认为在WCF配置中有很多超时设置,但我不确定哪一个与我相关。对于ASMX web服务,有一个选项可以指定无限超时设置,是否有类似的选项适用于WCF?此外,我需要更改任何IIS设置吗(WCF服务托管在IIS中),例如工作进程的回收、空闲超时等?
这是对Web服务的滥用,请不要这样做。
相反,应该让Web服务启动长时间运行的操作,在单独的进程中运行。如果客户端需要知道报告何时完成,则“单独的进程”应该跟踪报告创建并在报告完成时进行记录。客户端可以调用Web服务来检查状态。
你真的不想依赖HTTP连接保持几个小时的时间。这是一个网络。在网络上会发生各种事情。坏事情。