2010-04-28 3 views
1

지금은 어리석은 질문이지만 mvc에 익숙하지 않아 작동하지 않는 것 같습니다. 여기 ASP MVC 라우팅

내가 URL을/경로로 할 수 있도록하고 싶습니다 것입니다 :

1) www.domain.com/name/home/index
2) www.domain.com/home/ 인덱스

여기서 홈 컨트롤러는 모두 별도의 컨트롤러이며 이름 부분은 모두 같은 컨트롤러로 이동해야하며 이름은 거기에있는 모든 작업의 ​​매개 변수 여야합니다.

이 모든 것이 가능합니까? 당신의 도움을 주셔서 감사합니다.

+0

그것은 얼마나 복잡한 지 묘사하는 끔찍하고 끔찍한 디자인처럼 보입니다. 왜 이걸하고 싶니? –

답변

0

이것은 당신이 찾고있는 해답이 될하지 않을 수 있습니다,하지만 난 그게

www.domain.com/home/index 
www.domain.com/home/index/name

내 최초의 생각을 참조하는 것이 더 일반적인 될 것이라고 생각 과부하 Index 액션 메소드는 이해하지만, Daniel 것이라고했다 이것이 허용되지 않는다고 지적했다. (최소한 내가 제안한 방식대로).

귀하의 Index 액션 메소드는 string name 인수를 취할 수, 그리고 경로가 빠른 null 검사가 당신을 말할 것이다 당신의 액션 메소드에서

routes.MapRoute(
    "Default", 
    "{controller}/{action}/{name}", 
    new { controller = "Home", action = "Index", name = "" } 

같은 것을 포함 할 필요가

업데이트 대답은 ... name이 URL에 포함되었는지 여부

+0

메서드 서명과 HTTP 동사가 다른 경우를 제외하고는 ASP.NET MVC에서 작업을 오버로드 할 수 없습니다. –

+0

@Daniel : 당신은 맞습니다. 나는 나의 대답을 업데이트했다. –