25.2.1 웹 폼과 MVC의 경로(라우트) 차이점
클래식 ASP를 포함한 ASP.NET 웹 폼은 URL 요청 자체가 디스크에 있는 파일을 나타냈다. 하지만 ASP.NET MVC는 URL 경로가 특정 파일을 나타내지 않고, 특정 컨트롤러에 있는 액션 메서드를 가리키는 방식이 기본값이다. 정적인 파일 호출이 아닌 컨트롤러의 메서드가 경로(라우트)와 연결된 개념으로 보면 된다. 정리해보면 다음과 같다.
• 웹 폼 = 디스크상의 파일
• MVC = 컨트롤러 액션(Controller Action)
URL 라우팅은 특정 요청을 컨트롤러와 액션 메서드에 연결시켜 준다. 연결 후 해당되는 뷰 페이지로 전달해주는 역할까지 한다. 웹 브라우저로 루트 경로를 요청하면 다음과 같이 Home 페이지가 실행되는데 /경로 또는 /Home 또는 /Home/Index 경로 모두 똑같이 Home 페이지를 보여준다. 실제로는 ~/Views/Home/Index.cshtml 페이지가 실행되는 것이다. 이는 MVC 프레임워크의 기본 라우팅 규칙에 의한 것이다.
▲ 그림25-1 Home 페이지 실행