1

내 응용 프로그램에서 시간 제한을 처리하기 위해 0으로 작업 필터가 있습니다 (세션이 null인지 확인합니다. 그렇다면 사용자를 시간 초과 페이지로 안내합니다). 모든 컨트롤러 동작에 장식되어 있습니다. 그러나 시간 초과가 정상적으로 처리되지 않는 간헐적 인 동작이 발생했습니다. 그런 다음 사용자 정의 모델 바인더에서 null인지 그리고 null 참조 예외가 발생했는지 세션을 확인했다는 것을 알았습니다.Asp.net mvc3 필터 및 사용자 정의 모델 바인더 실행 순서

간헐적 인 이유를 아는 사람이 있습니까? 모달 바인딩 및 필터 실행이 다른 스레드에서 실행됩니까?

+0

'Application_PreRequestHandlerExecute'가 요구 사항을 충족하지 못합니까? –

답변

0

모두 같은 스레드에 없습니다. 모델 바인딩은 세션 시간 초과와 관련이 없습니다.

세션 시간이 초과되면 예외가 발생하지 않습니다. 로그인으로 리디렉션하거나 메소드를 호출하여 액션 필터에서 세션 변수를 다시 채울 수 있습니다.