Controller中的会话属性何时初始化?

时间:2009-07-14 03:17:04

标签: asp.net-mvc

Session初始化的Controller属性是什么时候?

从我看来,在调用构造函数时它没有被初始化。什么时候初始化?

2 个答案:

答案 0 :(得分:3)

从源头看来,当ControllerActionInvoker调用动作时,控制器上下文(包含HttpContext,因而是Session)被提供给控制器。它也可以通过过滤器主要方法上的过滤器上下文对象进行过滤。

答案 1 :(得分:1)

所以这已经过时了,但我想我将来会留下这个答案。

http://forums.asp.net/t/1500473.aspx

有些人说会话是在你第一次使用时创建的。我自己的经验证明了这一点,但有一点需要注意,如果你有两个动作方法同时执行,那么访问Session的第一个方法似乎最终会有一个不同的Session到第二个。我对我的代码进行了锁定以尝试解决此问题,但最后通过在我的流程中初始化我的会话来解决它。