2

MVC의 라우팅 (URL을 컨트롤러에 매핑)이 방해가되는 경우가 있습니다. 나는 그것을 회피하고 모든 URL을 하나의 컨트롤러에 보내고 싶다. (포맷에 상관없이, 그리고 그것들을 파싱하려는 시도없이).라우팅없는 MVC2

나는 이것이 쉽다라고 생각했지만, 나는 막혔다. 도움을 많이 받으실 수 있습니다.

+0

해결하려는 문제에 대해 더 구체적으로 설명해 주실 수 있습니까? URL을 완전히 무시 하시겠습니까? 나는 거의 귀하의 질문에서, 당신은 정말로이 문제에 대한 MVC를 사용하고 싶지 않아 말할 것입니다. –

+0

형식을 지정하지 않거나 라우팅하지 않아도 호출 할 작업 방법을 결정하는 방법은 무엇입니까? 최소한 하나의 라우팅을 배치하거나 라우팅 테이블의 기본 라우팅을 바꿔야 원하는 것을 얻을 수 있습니다. –

+0

컨트롤러에서 HttpRequest를 구문 분석 한 다음 하위 컨트롤러를 위임 할 계획입니다. 전체 경로가 URL만으로는 결정될 수 없기 때문에이 작업을 수행해야합니다. 헤더의 정보를 봐야합니다. 콘텐츠를 단일 컨트롤러 및 작업에 관계없이 모든 URL을 전송하는 경로를 만들려면 어떻게해야합니까? – Kenn

답변

4

포괄 경로 (Global.asax에)를 작성하고이 경로에 기본 액션/컨트롤러를 정의 .. Global.asax.cs에 Application_Start이 추가

routes.MapRoute(
      "All", 
      "{*all}", 
      new { controller = "Home", action = "Index" } 
     ); 
1

작동합니다 :

RouteTable.Routes.MapRoute(null, "{*path}", new { controller = "MyController", action = "MyAction" }); 

MyAction의 매개 변수는 path이라고해야합니다.