2009-11-25 19 views

回答

15

Application_Start和Application_End方法是不代表HttpApplication事件的特殊方法。 ASP.NET在应用程序域的生命周期中调用它们一次,而不是为每个HttpApplication实例调用它们。

因此,当第一个用户打开该网站时,它将会遇到application_start方法,然后它不会。

我会补充说,你要做的事情是有风险的。如果你想发送批量电子邮件,那么你可能想要考虑可以每天发送电子邮件的日程安排程序。

+0

您好ved我在共享主机,他们不会允许调度程序 – 2009-11-25 03:14:12

+0

您好我最近实施了在网站上运行的背景任务,通过将网站转换为“永远在线”网站。应用程序池中有一个设置可以执行此操作。你可能想看看那个 – Zeus 2017-09-05 18:09:58

2

Application_Start仅在第一个人前往站点并且app_pool刷新时运行。

这不会发生在网站的每一次击中。

对于类似cron的系统,您可能想要考虑类似http://www.webcron.org/来安排任务。

+0

也许OP在考虑_BeginRequest? – 2009-11-25 02:59:04

+0

嗨约翰, 我在共享主机,所以我不能使用调度...是安全的使用缓存项目回调和发送邮件一次在我的用户好评 – 2009-11-25 03:15:46

+0

高速缓存项目回调不能依靠,缓存可能会过早过期因为该应用程序需要内存或其他东西,如果我是你,我会尝试使用http://www.webcron.org/或类似的网站。 – 2009-11-25 03:17:32

0

它应该在Application_BeginRequest上加上一个DB来存储每个访问者的状态。 但最合适的是在调度程序。

+0

海耶尔谢谢你的回复 – 2009-11-25 03:18:42

相关问题