全局中的Application_Start事件.不开火

本文关键字:事件 开火 Start Application 全局 | 更新日期: 2023-09-27 18:13:54

我创建了一个每分钟运行一次的任务,并决定将其放在Global.asax文件中的Application_Start事件中,以便在应用程序启动时立即执行。当我运行它时(没有调试和在调试模式下),它不会启动。

我试着把它放在Session_Start事件只是为了确保它不是来自Global.asax文件的标记,它工作得很好。但不幸的是,它必须是在应用程序启动时,而不是在会话启动时。

这是我的全局。asax (ASP。. NET 2.0, VS2008)

<%@ Application Language="C#" Inherits="Microsoft.Practices.CompositeWeb.WebClientApplication" %>
<%@ Import Namespace="System.Xml" %>
<%@ Import Namespace="TaskManager" %>
<script runat="server">
    private TaskScheduler _scheduler = null;
    void Application_Start(object sender, EventArgs e) 
    {
        XmlDocument xml = new XmlDocument();
        xml.Load(Server.MapPath(@"'Config'tasks.config"));
        XmlNodeList nodes = xml.SelectNodes("Tasks/Task");
        this._scheduler = new TaskScheduler(nodes);
        this._scheduler.StartTasks();
    }
    void Application_End(object sender, EventArgs e) 
    {
        this._scheduler.StopTasks();
    }
    void Application_Error(object sender, EventArgs e) 
    { 
        // Code that runs when an unhandled error occurs
    }
    void Session_Start(object sender, EventArgs e) 
    {
    }
    void Session_End(object sender, EventArgs e) 
    {
        // Code that runs when a session ends. 
        // Note: The Session_End event is raised only when the sessionstate mode
        // is set to InProc in the Web.config file. If session mode is set to StateServer 
        // or SQLServer, the event is not raised.
    }
</script>

全局中的Application_Start事件.不开火

抱歉-由于rep我不能评论-但如果有麻烦你可以求助于System.Diagnostics.Debugger.Launch();结合以上任何一种(编辑网页)。cofig等)