比较高深的问题,高手请进 是的,每一个应用就是一个Application所以不同的应用不能共享相同的session,当然HttpApplication也是一样的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 是的。 可以这样认为:每一个虚拟目录就是一个应用程序,它维护一个属于自已的 HttpApplication实例。 上面几位,请注意"当应用程序接收到 HTTP 请求时,ASP.NET 页框架将分配这些实例中的一个来处理该请求。该特定的 HttpApplication 实例负责管理它所分配到的请求的整个生存期,并且只有在完成该请求后才可以再次使用该实例。"这句话,ASP.NET 将分配每个http请求一个HttpApplication 实例并保持到这个请求结束,如果每个应用只对应一个HttpApplication 实例的话,岂不是一个网站同时只能相应一个浏览者了,从一个HTTP 请求的发出到完全结束是个不短的时间,这段时间是一个浏览者所独占的,如果是这样的话,真是不可接受的. 独占应该是没有错的,但是处理http请求并不是完全有application实例来完成的,我认为它只负责很少的一部分处理。 to evonne_feng(evonne):其实并不是每个web应用程序对应一个HttpApplication 实例的的,应该是每个http请求对应一个HttpApplication 实例,看msdn:在创建了 HttpApplication 类的实例后紧接着调用 HttpApplication.Init 方法。您可以使用该方法创建并配置要跨所有处理事件使用的任何对象,如下面的示例所示:[Visual Basic]<script language="VB" runat="server"> Public Overrides Sub Init() 'Insert something interesting here. End Sub</script>[C#]<script language="C#" runat="server"> public override void Init() { // Insert something interesting here. }</script>Init 方法与 Application_OnStart 事件不同,因为总是对应用程序中的所有 HttpApplication 实例调用该方法。在应用程序的生存期中只调用一次 Application_OnStart,这便是对 HttpApplication 的第一个实例调用。使用 Application_OnStart 只是为了创建或修改所有管线实例共享的状态,例如 ApplicationState 对象的使用。因为局部变量不被多个 HttpApplication 实例共享,所以不要使用它来创建局部变量。紧接着销毁 HttpApplication 类的实例之前调用 HttpApplication.Dispose 方法。您可以使用它来清理任何本地资源。 我的理解是:在服务器端每个网站应用程序生成一个httpApplication类的实例,这个实例可以相应多个http请求,但在同一时间内只能相应一个http请求。 这么理解肯定有问题,一个httpApplication实例只能同时对应一个http请求,要是一个应用程序只能对应一个httpApplication实例的话,只能等一个请求完全结束后才接受下一个请求,网站还会有人来吗 asp.net连接excel问题 跳转页面问题 找不到类型或命名空间名称“Excepion”??? sourcesafe非要安SQL2005吗? 关于MS petshop安装的问题 datagrid问题:在datagrid 里怎么把数据写回数据库呢 ? 关于iframe的,用iframe怎么实现象WINDOWS的资源管理器? asp.net如何查看数据库里面的数据表名及字段名。 这就是程序员的下场吗? 今天公司一位30多的程序员惨遭解雇(转贴) 类似投票功能的问题 急!关于<form runat="server"> DropDownList控件如何进行数据绑定?
其实并不是每个web应用程序对应一个HttpApplication 实例的的,应该是每个http请求对应一个HttpApplication 实例,看msdn:在创建了 HttpApplication 类的实例后紧接着调用 HttpApplication.Init 方法。您可以使用该方法创建并配置要跨所有处理事件使用的任何对象,如下面的示例所示:[Visual Basic]
<script language="VB" runat="server">
Public Overrides Sub Init()
'Insert something interesting here.
End Sub
</script>
[C#]
<script language="C#" runat="server">
public override void Init() {
// Insert something interesting here.
}
</script>
Init 方法与 Application_OnStart 事件不同,因为总是对应用程序中的所有 HttpApplication 实例调用该方法。在应用程序的生存期中只调用一次 Application_OnStart,这便是对 HttpApplication 的第一个实例调用。使用 Application_OnStart 只是为了创建或修改所有管线实例共享的状态,例如 ApplicationState 对象的使用。因为局部变量不被多个 HttpApplication 实例共享,所以不要使用它来创建局部变量。紧接着销毁 HttpApplication 类的实例之前调用 HttpApplication.Dispose 方法。您可以使用它来清理任何本地资源。
在服务器端每个网站应用程序生成一个httpApplication类的实例,这个实例可以相应多个http请求,但在同一时间内只能相应一个http请求。