2011-03-01 82 views
1
后的动作

可能重复:
ASP.Net:Best way to run scheduled tasks火10分钟

如何使用C#

例如上发射在ASP.NET 10分钟后服务器端操作,如果用户创建一个帐户,并且他的帐户在12小时内保持非活动状态,如何自动删除他的帐户。我需要一些与这种例子有关的东西。

应该和浏览器没有关系。一旦用户注销他的帐户,他的某些服务器端操作将在一段时间后自动执行。

+2

你真的了解你问? – stefan 2011-03-01 17:29:21

+1

我认为一个Windows服务可能更适合那些清理/管理任务 – BrokenGlass 2011-03-01 17:30:03

+0

你是什么意思自动删除你为什么需要这个 – Dotnet 2011-03-01 17:30:31

回答

0

我会设置一个计时器方法在Global.asax,然后可以做清理工作。

THEREFOR您以下代码添加到的Application_Start:

子的Application_Start(BYVAL发件人为对象,BYVALË作为EventArgs的)

“ - 保存翻译每15分钟,AppStart的 昏暗TimerDelegate之后开始15秒作为Threading.TimerCallback = AddressOf Manager.DoWork

昏暗MyTimer作为Threading.Timer =新Threading.Timer(TimerDelegate,没什么,TimeSpan.FromSeconds(15),TimeSpan.FromMinutes(10))

End Sub

并实施例如,经理与工人方法: Manager.vb:

公众共享子的DoWork()

“--Dow工作...

末次

+0

你好克里斯,你的回答是正确的...但我可能期望在c#中使用相同的语法# – lock 2011-03-01 17:42:16

+0

因为我不能作为评论发布代码尝试使用此在线工具转换代码片段:http://www.developerfusion.com/tools /转换/ VB-到CSHARP / – Christoph 2011-03-02 14:30:17

0

This thread似乎有一些与您的问题相关的解决方案。

0

为了确保无论关闭浏览器甚至IIS回收的人都能运行一些代码,您应该在服务器上运行一个Windows服务,然后您可以在其中使用某种任务调度框架。

我宁愿解决这个问题,例如每天运行一次清理工作,例如我会花费精力编写自己的工作逻辑(如果真的需要),然后让Windows任务调度服务调用我的工作没有时间浪费重塑轮...