2012-12-07 2 views
1

현재 MVC4 응용 프로그램에서 작업하고 있습니다. 나는 웹 폼 배경을 가지고 있으며 이것은 나의 첫번째 MVC4 어플리케이션이다.글로벌 mvc 필터 또는 httpmodule

각 페이지에 대한 요청에 따라 추가 처리에서 다시 사용되는 httpcontext에 일부 항목을 배치하는 작업을 수행해야합니다. 일반적으로 웹 양식을 사용하여 http 모듈을 사용하고 모듈 요청 시작 부분에서 작업을 수행합니다. 또는 때로는 PostAcquireRequestState 등에서 해고해야하는 작업이 있습니다.

하지만 이제는 MVC로 작업 중이므로 각 컨트롤러 동작 중에 실행되는 전역 필터를 만드는 것이 더 좋습니다. 필터 내에서 나는 httpmodule에있는 것과 동일한 로직을 배치 할 것입니다. 이 접근법에 대한 장단점은 무엇입니까?

+1

어느 쪽이든 갈 수 있습니다. 성취하고자하는 바를 정확히 설명하지 않으면 제안하기가 어렵습니다. – VJAI

+0

예를 들어, 쿠키를 설정하고 httpcontext에 항목을 삽입하고 스레드 문화를 설정하는 등의 작업을 수행했습니다. – amateur

답변

0

필터는 MVC 요청 처리 파이프 라인에서 나중에 실행됩니다. 문화를 설정하는 것과 같은 일을 위해서 나는 가능한 한 일찍 Application_AcquireRequestState 이벤트 에서처럼 그렇게하는 것이 좋습니다.

필자는 모델 바인딩이 필터보다 먼저 발생한다고 생각하기 때문에 문화 관련 문제가 발생할 수 있습니다. http://gedgei.wordpress.com/2011/09/17/asp-net-mvc-localization-using-actionfilter/. 이 경우 필터를 통해 맞춤 HttpModule에 투표 할 것입니다.

http://weblogs.manas.com.ar/smedina/2008/12/17/internationalization-in-aspnet-mvc/