[.NET/ASP.NET] - [ASP.NET] ASP.NET MVC2 Site 만들기 (1)
[.NET/ASP.NET] - [ASP.NET] ASP.NET MVC2 Site 만들기 (2)
[.NET/ASP.NET] - [ASP.NET] ASP.NET MVC2 Site 만들기 (3)
[.NET/ASP.NET] - [ASP.NET] ASP.NET MVC2 Site 만들기 (4)
이번엔 ASP.NET Routing 에 대해서 살펴볼까 합니다.
ASP.NET MVC Framework 에서는 Controller Class와 Action 에 URL을 연결하기 위해서 ASP.NET Routing 을 사용합니다. ASP.NET Routing 은 여러분이 먼저 정의해 놓은 패턴에 따라 URL 내의 parameter 를 파싱합니다. 그리고 자동적으로 parameter argument 로 Controller Action 에 변수로 전달합니다. 이 과정에서 Web site 내의 특정파일을 연결할 필요는 없습니다.
기본적으로 ASP.NET MVC Project 는 미리 설정된 URL Routing Rule Set 을 가집니다.
새로운 ASP.NET MVC project template 에 의해서 생성되는 Global.asax 의 ASP.NET Application Class 내에 선언된 기본적인 이름 기반(name-based) URL mapping 규칙 set 을 사용하여 개발을 시작할 수 있습니다.
기본적으로 [Controller]/[Action]/[id] 의 패턴을 가지고 있습니다.
우리가 만든 Web Site 를 호출해 보겠습니다. 50000번 포트를 사용하고 있었죠?
http://localhost:50000 를 날립니다.
안뜬다면... ASP.NET Development Web Server 가 호출되어있나 확인하시고...
아래와 같이 뜹니다.
우리가 Web Server 에 http://localhost:50000 라는 Request 를 날리면 ASP.NET Routing Engin 은 이 Request 를 가로 채서 기본적으로 등록된 [Controller]/[Action]/[id] 패턴의 Route 를 적용할 것입니다.
그런데 URL 에는 Pattern 에 적용할 내용이 포함되어 있지 않죠?
그럼 Routing Engin은 기본 Controller 와 기본 Action 으로 instance를 생성합니다.
기본 값들은 어떻게 알 수 있냐고요?
Global.asax 파일의 Application Class 를 보면 알 수 있습니다.
7 Shared Sub RegisterRoutes(ByVal routes As RouteCollection)
8 routes.IgnoreRoute("{resource}.axd/{*pathInfo}")
9
10 ' MapRoute takes the following parameters, in order:
11 ' (1) Route name
12 ' (2) URL with parameters
13 ' (3) Parameter defaults
14 routes.MapRoute( _
15 "Default", _
16 "{controller}/{action}/{id}", _
17 New With {.controller = "Home", .action = "Index", .id = UrlParameter.Optional} _
18 )
19
20 End Sub
17 Line 을 보시면 아시겠죠?
음... 또한가지 알아 두셔야 할 점은 이 RegisterRoutes Method 를 수정해서
[Controller]/[Action]/[id] 패턴의 Route Rule 을 새롭게 수정하실수 있다는 것입니다.
이번 아티클까지 MVC Framework 을 이용해서 Site 를 제작하는데 필요한 내용을 간략하게 살펴보았고 다음에는 Site를 제작해 보도록 하겠습니다.
그럼 행복한 고수되십시요.
woojja ))*
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
반응형
'Web > ASP.NET' 카테고리의 다른 글
[ASP.NET] ASP.NET MVC2 Site 만들기 (7) (0) | 2010.07.09 |
---|---|
[ASP.NET] ASP.NET MVC2 Site 만들기 (6) (0) | 2010.06.14 |
[ASP.NET] ASP.NET MVC2 Site 만들기 (4) (0) | 2010.06.10 |
[ASP.NET] ASP.NET MVC2 Site 만들기 (3) (0) | 2010.06.08 |
[ASP.NET] ASP.NET MVC2 Site 만들기 (2) (0) | 2010.06.05 |