문제

제작하고있는 ASP.NET MVC 응용 프로그램을위한 새로운 ActionFilter를 만들었습니다. HTTP 게시물을 수락하는 조치가 있으며 액션 메소드의 인수는 사용자 정의 모델 바인더를 작성하고 등록한 객체를 수용합니다.

나는 내부를 알아 차렸다 IActionFilter.OnActionExecuting 의 가치 filterContext.Controller.ViewData.Model 항상 null 모델 바인더가 동작 필터 전에 항상 호출되는 것처럼 보이지만 OnActionExecuting 방법. 이것과 대조적으로 IActionFilter.OnActionExecuted 동일한 동작의 방법은 값을 필터링합니다 filterContext.Controller.ViewData.Model 무효가 아닙니다.

이것이 디자인이나 버그에 의한 것인지 알고 있습니까? 디자인으로 이것이 왜 그런지 설명하는 링크가 있다면? 감사.

도움이 되었습니까?

해결책

컨트롤러 동작이 모델을 생성하고 조치를 취하기 전에 모델이 어떻게 존재할 수 있습니까? 당신은 그것이 일어날 때까지 어떤 모델이 만들어 질지 모릅니다.

다른 팁

Sayed, 당신은 일반적으로 행동을 실행하는 동안 모델을 설정합니다. 따라서, 동작이 호출되기 전에 발생하는 onactionExecuting을 실행하는 동안 모델이 null이라는 것이 당연합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top