我有一个asp网站,允许它的用户管理一些数据。然后,用户需要单击一个按钮,以便网站处理一些文件。问题是操作大约需要5分钟,我需要:
QueueBackgroundWorkItem实际上不像队列那样,无法看到操作的状态。
BackgroundWorker我质疑是不可能的。
我应该创建一个执行操作的Windows服务,并且网站通过WCF与它通信吗?
我还想避免使用第三方软件。
答案 0 :(得分:0)
我创建了一个从新线程的Application_Start开始并具有无限循环的方法。每隔10秒钟,它将验证一个任务队列。任务是存储任务参数的类。我将每个任务发送给运行任务的方法。
任务处理方法将信息写入数据库,以便我可以看到进度。
我不知道这是否是最好的实现,但是它满足了我对用户可以添加,删除任务并查看进度的处理队列的要求。