2011-10-03 3 views
1

ASP.NET MVC 3 컨트롤러 수명주기에서 ControllerContext가 생성 될 때?ASP.NET MVC 3 컨트롤러 수명주기에서 controllerContext가 생성 될 때?

나는이 내 컨트롤러의 생성자에 다음 코드 :

if ((Session == null || Session.IsNewSession || Session["SecureAuthHash"] == null) && 
    (ValueProvider == null || ValueProvider.GetValue("controller").ToString() != "Account")) 
{ 
    RedirectToAction("Login", "Account"); 
} 

그리고 다음과 같은 오류 얻을 :

Exception Details: System.ArgumentNullException: Value cannot be null. 
Parameter name: controllerContext 

사용할 수있는 controllerContext 그래서 내 코드가 실행됩니다? 이것은 다른 코드보다 먼저 실행되기로되어 있으므로 각 액션 메소드에 넣고 싶지는 않지만 ... 유일한 방법일지도 모릅니다.

TIA, 벤지는

답변

5

When in the ASP.NET MVC 3 Controller lifecycle does the ControllerContext get constructed?

이것은 Initialize 방법 안에 일어난다. 컨트롤러 생성자에서 HttpContext 바운드 객체에 액세스하지 마십시오.

+0

감사합니다. – benjy