2

您能否举例说明最适合放置在 Application_Start 和 Session_Start 子例程中的内容?我知道每个子程序何时被调用。Application_Start 当第一个用户第一次访问 Web 应用程序时。Session_Start 当用户打开与应用程序的会话时。但是这些子程序中的每一个都属于什么代码。每个子程序中的代码应该做什么?

4

3 回答 3

1

有什么例子吗?好吧,在 MVC 站点中,路由在 Application_Start 中注册。这也是初始化 IoC 容器(例如 StructureMap)的好地方。如果您希望它们在用户访问它们时随时可用而不是后期绑定(例如,如果它们具有很高的初始化成本并且您宁愿自己在网站上进行一次缓慢的初始点击,则可以初始化您在应用程序中拥有的一些单例)而不是用它来打扰一两个客户)。

Session_Start 通常不常使用,但可能是某种类型的每用户(或每会话,实际上)跟踪的好地方。

于 2010-10-31T13:48:15.073 回答
0

Application_Start通常用于初始化应用程序范围的设置,这些设置需要每个应用程序域完成一次,例如注册对象容器,读取一些配置初始化值,......Session_Start您可以放置​​一些与启动会话的特定用户相关的代码。

于 2010-10-31T13:47:30.780 回答
0

小心 Application_Start 中的异常处理。在 IIS7 集成模式下,您将没有响应对象或 HTTPContext。请参阅此线程:请求在此上下文中不可用

于 2012-09-13T13:27:16.150 回答