2012-03-26 2 views
0

이것이 가능한지 확실하지 않습니다. "globalString"뽑아 될 필요가MVC 3 라우팅 문제 http://bleh.com/globalString/Controller/action

http://bleh.com/globalString/Controller/action 

구문 분석 및 설정 몇 가지 변수가 될 : 내가 뭘하고 싶은 같은 URL이 있습니다. 이 문자열은 기본적으로 클라이언트 이름입니다.

그런 다음 정상적으로 컨트롤러 및 작업을 수행하게됩니다.

새 MVC 응용 프로그램을 만들 때 기본 라우팅을 설정하면 그것이 만드는 매핑을 삭제하거나 이전 또는 이후에 새 매핑을 추가해야합니까?

감사합니다,

+0

이'globalString'은 어떻게 계산 될까요? 당신은 클라이언트 이름에 대해 언급하지만이 클라이언트 이름은 무엇에 달려 있습니까? –

답변

0

그것은 가능하다 (이 말할 수 있습니다로 여전히 MVC에 처음으로 탐사입니다), 당신은 기본 매핑 경로 전에이 규칙 을 넣어해야합니다. 경로 엔진은 추가 순서에 따라 경로 맵을 검색했습니다. 따라서보다 구체적인 규칙을 미리 작성해야합니다.

그러나/globalString/Controller/작업이 기본 경로/Controller/action/id와 충돌하기 때문에 경로 엔진이/Controller/action/id 경로를 입력 할 수 없습니다. 그래서 당신은 이전의 제약 조건을 추가해야합니다. 정규식 패턴 등.

0

public override RouteData GetRouteData(HttpContextBase httpContext)System.Web.Routing.Route에 덮어 쓸 수 있습니다. 거기서 당신은 경로와 관련된 거의 모든 것을 할 수 있습니다.