내용 보기
작성자
관리자 (IP : 172.17.0.1)
날짜
2020-07-09 05:08
제목
[ASP.NET MVC] ASP.NET MVC모델에서 Controller명과 동일한 이름으로 라우팅하기
GameController라는 이름의 컨트롤러가 존재할때 기본 라우팅을 따른다면 /Game(컨트롤러명)/Detail(액션명)/12(전달값)으로 라우팅을 하게 된다. 하지만 Detail이라는 액션명을 생략하고 /Game/12 형식으로 라우팅을 하고 싶을때가 있다. Global.asax에 신규 라우팅룰을 추가 하면 되지만, 이때 GameController가 존재하기 때문에 기본 라우팅 테이블가 중복되어 다른 액션 /Game/Regist 등도 신규로 추가한 라우팅룰을 따르게 된다. 이 문제를 해결하기 위해서는 새로 추가하는 라우팅 룰에 숫자만 받아들인 다는 제약을 걸어주면 해결이 된다.
위와 같이 설정하면, /Game/숫자 로 들어오는 요청은 GameController의 Detail 액션이 처리하고 그외의 요청은 기본 라우팅룰을 따르게 된다. |
출처1
출처2