asp.net – 为什么几次调用HttpApplication构造函数

有人可以解释为什么在应用程序启动时多次调用从HttpApplication派生的自定义类的构造函数

我的代码结构如下:
– Global.asax中的My Global类来自CustomApp类。
– CustomApp类派生自HttpApplication类

全局类在创建时创建,但是当我在构造函数中放置一个断点时,它会被调用多次!我以为应该只有一个应用程序类的实例被创建?

我错了吗?

UPD:Web服务器确实可以创建多个HttpApplication实例来处理同时进入的多个请求。当您在HttpApplication后代的构造函数中放置断点时,这一点变得尤为明显。客户端将要求几个请求(http内容,CSS文件等),并为每个请求提供服务,Web服务器将创建新的HttpApp实例。所以,当写入应用程序初始化逻辑时,请注意这一点。

解决方法

我相信ASP.NET运行时可能会为每个应用程序域创建多个HttpApplication。所以HttpApplication.Init和Ctor可能会被多次呼叫。

如果要初始化代码只运行一次,那么应该使用Application_Start事件,每个应用程序只会调用一次。

相关文章

这篇文章主要讲解了“WPF如何实现带筛选功能的DataGrid”,文...
本篇内容介绍了“基于WPF如何实现3D画廊动画效果”的有关知识...
Some samples are below for ASP.Net web form controls:(fr...
问题描述: 对于未定义为 System.String 的列,唯一有效的值...
最近用到了CalendarExtender,结果不知道为什么发生了错位,...
ASP.NET 2.0 page lifecyle ASP.NET 2.0 event sequence cha...