求 ASP.NET 中 后台服务器自动处理程序,而不影响用户操作 解决方法?

Terry717 2009-02-16 06:44:47
在 ASP.NET 一页面Button1事件中,将一些任务交给 后台程序来自动处理,而用户不需等处理结束后才能进行其它操作
(用户根本不需要知道后台服务器在执行处理)

主要问题是:交给后台程序来处理,而不影响用户操作(互不影响)

该如何做呢?

可参考: http://blog.csdn.net/crossskyfreely/archive/2007/09/01/1768124.aspx

各位高手请指点!!!
...全文
184 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Terry717 2009-02-20
  • 打赏
  • 举报
回复
谢谢大家的建议和意见!!!

我解决了,是用BackgroundWorker类来实现,实现起来也挺简单的!

结贴......
zlb789 2009-02-17
  • 打赏
  • 举报
回复
up 顺便学习下
jinjazz 2009-02-17
  • 打赏
  • 举报
回复
作一个任务排队的序列就可以了。
wangping_li 2009-02-17
  • 打赏
  • 举报
回复
这样也行,有一个办法,就是当前提交的记录先保存在缓存中
用户可以干别的事情,保存操作应该有一个状态返回,返回成功时清空缓存数据
如果没有提交成功,则弹出来提示:用户XXX在yyyy-MM-dd录入的xxxx信息没有提交成功,异常信息为:XXXXX,是否修改记录重新提交?如果选择是的话直接转到该页面,同时把缓存中的数据绑定对应的控件中
wangping_li 2009-02-17
  • 打赏
  • 举报
回复
其实不影响用户操作倒好办
提交过后开个线程后台自动处理就行了
但是有一个问题,你要求让用户不知道后台在自动处理,假如用户在进行一个订单录入操作
界面上的录入东西比较多,如果提交后用户离开了此界面,而结果这个操作没有提交成功,那岂不是用户所录的内容全没了?
又得重新输入?如果用户还停留在当前页面等待的话,如怕提交失败,抛个异常出来,用户都还可以适当修改内容,再提交
zzc205 2009-02-17
  • 打赏
  • 举报
回复
服务端收到请求就马上返回应答,然后开根线程慢慢跑,要是跑出问题了再通知客户端,如何没跑出问题那就该干啥干啥。
shankaipingo 2009-02-17
  • 打赏
  • 举报
回复
以上都同意
bizbuy 2009-02-16
  • 打赏
  • 举报
回复
如果纯web处理,可以另开一个线程在后台做这个工作,这样前台的浏览操作基本不受影响。

不过这样做的前提是,新线程的数量可控、新线程的关闭可控
万小萌 2009-02-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 whoami333 的回复:]
指点不敢当,就当讨论了。如果用户无需等待,也不需要知道进度的话,可以通过数据库来进行。即在数据库里设计一张表用于指示任务。web系统创建任务插入表中。再设计一个C/S程序或者系统服务,监控此表,并执行任务。
[/Quote]
这个思路很好,sqldepandence应该支持这个!

在petshop4.0中处理订单问题(类似这个问题),好像也做得不错,它是把订单信息放到微软消息队列,然后一个控制台应用程序读消息队列然后处理!
whoami333 2009-02-16
  • 打赏
  • 举报
回复
指点不敢当,就当讨论了。如果用户无需等待,也不需要知道进度的话,可以通过数据库来进行。即在数据库里设计一张表用于指示任务。web系统创建任务插入表中。再设计一个C/S程序或者系统服务,监控此表,并执行任务。

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧