【发布时间】:2010-08-23 11:22:46
【问题描述】:
我想知道处理从 ASP.NET 网页按需启动的长时间运行进程的最佳方法。
该过程可能包含多个步骤(例如将文件上传到服务器、在其上运行 SSIS 包、执行一些存储过程等),有时该过程可能需要几个小时才能完成。
如果我使用 WCF 服务进行异步执行,那么如果用户在进程运行时关闭浏览器会发生什么情况,应该如何向用户显示进程成功或失败结果?为了解决这个问题,我选择了单向 WCF 服务调用,但问题是我需要创建一个进程表并将结果(如果它在任何步骤中失败以及哪些步骤已成功完成,则存储结果)该表是一个额外的开销,因为有许多这样的进程以及用户可以从网页调用的各种步骤,并且用户需要了解进度(在最简单的情况下,状态可以是“进程 xyz 正在运行”)完成后,需要向用户显示输出(例如通过运行存储过程)。
为此设计解决方案的最佳方法是什么?
【问题讨论】:
标签: asp.net wcf asynchronous