【问题标题】:ASP.NET Web Application Application_Start Not Being Called in IISASP.NET Web 应用程序 Application_Start 未在 IIS 中调用
【发布时间】:2020-12-14 12:38:19
【问题描述】:

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

如果我在 Visual Studio 上本地运行它,我发现它可以工作

【问题讨论】:

  • @Jamal 我已经对此进行了研究,但答案似乎涉及调试。我很确定 application_start 确实被解雇了。
  • 您为什么在“旧”经典模式而不是集成模式下运行应用程序?这可能是问题所在。

标签: asp.net vb.net iis global-asax


【解决方案1】:

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 应用程序+开始请求....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

【讨论】:

    猜你喜欢
    • 2010-10-16
    • 1970-01-01
    • 1970-01-01
    • 2015-07-09
    • 2016-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多