IIS中未调用ASP.NET Web应用程序Application_Start

问题描述

我有一个在IIS 8上运行的ASP.NET Visual Basics Web应用程序,该应用程序需要在Global.asax中调用Application_Start才能初始化几个变量。但是,据我所知,该方法从未通过远程调试或日志记录被调用。该应用程序在经典模式下运行。

如果我在Visual Studio上本地运行它,则可以正常运行

解决方法

Application poolClassic mode对此功能没有影响。就我而言,application_Start事件正常工作。
请确保App_global.asax.dll位于BIN文件夹中。我们可以清理,重建项目,然后再次部署它。此外,在Application_start事件期间,我们最好不要编写IIS日志或写/修改数据库,这通常会导致权限问题,这似乎不起作用。
此外,您可以使用IIS日志验证结果。

  public class Global : System.Web.HttpApplication
    {
        public static int a = 34;
        protected void Application_Start(object sender,EventArgs e)
        {
            a = a + 45;
        }
        protected void Application_BeginRequest(object sender,EventArgs e)
        {
            Response.AppendToLog("Application BeginRequest...."+a.ToString());
        }
}

这将在IIS日志中生成一条记录。

2020-08-26 05:49:10 :: 1 POST /WebForm1.aspx 应用程序+ BeginRequest .... 79 8001-vabqia969VM Mozilla / 5.0 +(Windows + NT + 10.0; + Win64; + x64)+ AppleWebKit / 537.36 +(KHTML,+ like + Gecko)+ Chrome / 84.0.4147.135 + Safari / 537.36 http:// localhost:8001 / WebForm1.aspx 200 0 0 3

请参阅以下链接进行故障排除。
Application_start not working

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...