2010-07-20 4 views
1

이 질문이 이미 올지 확실하지 않습니다. 글쎄, 여기 내 문제가있다.사용자 지정 httpmodule을 MVC 또는 사용자 지정 처리기로 선택적으로 추가하기

하이브리드 MVC로 전환하려는 고전적인 Web Forms 사이트가 있습니다. 즉, 모든 새로운 기능은 MVC입니다. 그러나 우리는 친숙한 URL을 처리하고 변경을 계획하지 않는 사용자 정의 HTTP 처리기를 가지고 있습니다. 내 문제는 지금 우리의 기존 URL을 경로 무시로 추가하는 것입니다. Application_Start()에 예외 (1000 개)를 모두 추가하고 싶지 않습니다. MVC와 기존의 커스텀 핸들러를 기반으로하는 커스텀 http 모듈을 추가하는 것은 실현 가능한 해결책으로 보였다. 이 모듈은 기본적으로 (기존 경로의) XML 파일을 검사하여 요청을 라우팅하고 MVC 또는 MyHandler가 요청을 처리할지 여부를 결정합니다.

아무도 이것을 시도 했습니까? 해당 처리기로 요청을 오프로드하는 데 문제가 있습니다.

답변

1

이 작업을 수행하는 가장 좋은 방법은 HttpHandler를 HttpModule로 변환하고 모든 요청이 MVC로 전달되기 전에 사용자 지정 모듈을 통과하는지 확인하는 것입니다. MVC는 모듈로 구현되므로 처리기에 도달하기 전에 항상 요청을 가로 챕니다.

1

XML 파일을보고 매핑 할 때 경로에 전달하는 IRouteContraint를 구현하여 사용자 지정 제한을 만듭니다.

+0

감사합니다. Dave. 나는 우리의 처리기를 모듈로 변환하는 것을 끝내었고 이제는 MVC의 최상위에 위치합니다. MVC로 정의 된 모든 경로는 이제 내 모듈에 의해 무시됩니다. – Praveen

관련 문제