찾다

 >  Q&A  >  본문

asp.net-mvc - asp.net mvc에서 라우팅을 수행하는 방법은 무엇입니까?

Asp.net mvc는 일반적으로

컨트롤러/액션/매개변수

주소 양식

하지만 대부분의 경우 홈페이지 주소는 그런 경로가 아닙니다

예:

xxxx.com/asp.net/
xxxx.com/asp.net/mvc/
xxxx.com/asp.net/webform/
xxxx.com/asp.net/ado.net/

xxxx.com/javascript/
xxxx.com/javascript/jquery/
xxxx.com/javascript/angularjs/
xxxx.com/javascript/jichu/

xxxx.com/jiaoyu/

이때 주소는 컨트롤러/액션/파라미터 형식이 아닙니다

asp.net mvc에서 이런 경로를 매핑하는 방법을 모르시나요? ? ?

为情所困为情所困2738일 전580

모든 응답(1)나는 대답할 것이다

  • 阿神

    阿神2017-05-16 17:08:19

    이는 라우팅 규칙이 정의된 방식과 경로가 정의된 순서에 따라 다릅니다.
    이 요청이 ASP.NET 파이프라인 모델에 들어가면 미리 정의된 경로로 이동하여 일치하는 첫 번째 경로를 발견하면 라우팅 결과를 직접 반환합니다.
    예를 들어 기본 경로의 첫 번째 라우팅 규칙은

    입니다. 으아아아

    xxxx.com/asp.net/은 라우팅 규칙인 Controller="asp.net", action="Login";
    과 일치합니다. xxxx.com/asp.net/mvc/는 이 라우팅 규칙(controller="asp.net", action="mvc";

    )과도 일치합니다.

    다른 라우팅 규칙을 정의했는데 이 라우팅 규칙이 바로 지금 라우팅 규칙 앞에 있다고 가정해 보겠습니다.

    으아아아

    xxxx.com/asp.net/은 이 라우팅 규칙(controller="User", action="Link")과 일치합니다.
    그러나 xxxx.com/cast/는 첫 번째 라우팅 규칙과 일치하지 않으며 계속해서 두 번째 라우팅 규칙과 일치하게 됩니다. 이때 일치는 성공합니다(controller="cast", action="Login"#). 🎜🎜#

    "ASP.NET MVC3 프레임워크 마스터하기" 책을 읽어보는 것이 좋습니다. 11장 라우팅 규칙에 이 문제에 대한 분석과 소개가 있습니다.

    회신하다
    0
  • 취소회신하다