Why is Session null in the constructors of Controllers? It can be accessed from Action methods. Presumably, because the MVC Routing framework is responsible for newing-up a
This answer might be useful for some people
If we override Initialize method then we have to initialize base class with request context : base.Initialize(requestContext);
protected override void Initialize(RequestContext requestContext) { base.Initialize(requestContext); }