반응형

 

일반적으로 Global.asax 파일의 Application_Start 이벤트 처리기에서 호출되는 메서드에서 경로를 추가할 수 있다.

바로 예제를 보면서 설명한다.

 

예제

1
2
3
4
5
6
7
8
9
10
protected void Application_Start(object sender, EventArgs e)
{
    RegisterRoutes(RouteTable.Routes);
}
// 메서드 생성
public static void RegisterRoutes(RouteCollection routes)
{
    routes.Add();
}
 
cs

 

생성한 RegisterRoutes 메서드 안에 아래 내용을 추가한다.

1
2
3
4
5
6
7
8
routes.MapPageRoute("라우트네임""라우트url""물리적url"false,
    new RouteValueDictionary {
        { "index""초기값" }
    }, 
    new RouteValueDictionary {
        { "index", @"제약조건 정규식" }
    }
);
cs

 

MapPageRoute 메서드 파라미터를 분석해보자.

  • 라우트 네임 : 라우트에서 구분하기 위한 특별한 이름이므로 유니크하게 설정
  • 라우트 url : 내가 원하는 url을 설정
  • 물리적 url : 기존 접속하는 url을 설정
  • RouteValueDictionary 클래스를 이용하여 초기값과 제약조건을 설정

아래 진행하고 있는 프로젝트 내에서 사용하고 있는 예제를 보면 더 확실히 알 수 있다.

라우트 네임
 
 
 
 
 
 
 
 
 

 

  • : Notification이라는 유니크한 이름 설정
  • 라우트 url : 도메인/notification/index url을 사용, index는 해당 페이지의 키값이다.
  • 물리적 url : 물리적인 기존 url이다.
  • 초기값은 0으로 들어가고, 제약 조건 정규식에는 숫자 1자리 이상 9자리 이하 까지라는 조건을 포함시켰다.

정리

사용자들이 기억하기 쉽게 url을 설정하는 것이 옳은 방향이라고 생각한다. 그렇기 때문에 간결한 url을 설정해주어야 한다. 그뿐만 아니라 QueryString 값을 최대한 줄이는 것도 하나의 방법이라고 생각한다.

index라는 값을 굳이 보여줄 필요 없다. routing을 이용해서 최대한 url을 간결하게 만들자.

 

반응형

+ Recent posts