2010-01-13 4 views

답변

0

1) 예. 2) 다른 방법은 무엇입니까? 두 경우 모두 이름은 모두 있습니다.

+0

나는 그들이 위치에 따라 일치하는 수 생각하지만, 분명히이 불가능합니다. 나는 이것을 통해 생각해야 할 것입니다 ... – Ben

0

아니, 당신은 당신의 자신의 defaultmodelbinder 및/또는 controlleractioninvoker (구성 이상) 대회의 bacause

+0

아니, 그것은 그것보다 훨씬 복잡합니다. 작업 방법 선택기를 고려하지 않았습니다. 행동에 과부하가 걸릴 수 있음을 상기하십시오. args가 다르면 여러 액션이 같은 이름을 가질 수 있습니다. param을 바인딩 할 수있는 * 능력이 있다고해서 동일한 유형의 arg를 여러 개 가질 수는 없다는 것을 의미하지는 않습니다. 그런 다음 질문해야합니다. 요청에 대한 동작이 유효한 지 물어볼 때 요청의 어떤 토큰 (QSP, 양식 키, 서버 바 등)을 고려해야합니다. 그리고 내가 말했듯이, 그 시점에서, 그 이름은 당신이 가진 전부입니다. 그것은 행동에서 * 및 * 경로에있는 유일한 것입니다. –

+0

조치 메소드 선택자는 controlleraction 호출자에 있으며 routevalues의 "action"값에 의존하지 않도록 변경할 수 있습니다. 나는 실제로이 작업을 복잡하지만 유용한 목적으로 수행했으며 작동합니다. – Paco

+0

더 간결하게하기 : * 중요한 노력으로 "일치"를 "같음"이외의 다른 의미로 다시 정의 할 수 있지만 * 자신을 속일 수는 없습니다. * 아무리 당신이 이름과 일치하더라도 해. –

0

예를 생성 할 때. 이런 방식으로 애플리케이션을 개발하는 것이 더 간단하고 빠릅니다. ASP.NET MVC의 힘입니다.

+0

단점은 모든 응용 프로그램에 대해 동일한 규칙을 사용해야한다는 것입니다. 협약은 귀하 또는 귀하의 의견에 기반하지 않고 MVC 프레임 워크의 제작자들의 의견을 기반으로합니다. 컨벤션이 컨 피규 러블 (구성 가능)하고 지나치게 협조되지 않는 한 컨피규레이션에 대한 컨벤션은 이상적입니다. 일부 응용 프로그램에서는 쉽지는 않지만 할 수있는 규칙을 재정의하는 것이 매우 유용 할 수 있습니다. – Paco

+1

많은 응용 프로그램에서의 변환은 강력한 아키텍처를 염두에두고 소프트웨어를 신속하게 제작할 수있는 방법이라고 생각합니다. 구성에 대해 걱정할 필요가 없습니다. Converntions은 한 가지 이점을 제공합니다. 어떻게, 어떻게 (동일하고 반복 가능한 것을 만드는지) 생각할 필요가 있습니다. – Dariusz

1

실제로. RouteData 컬렉션의 "Values"사전에서 이름이 매개 변수 이름과 일치하는 키/값 쌍을 검색합니다. 은 "달"매개 변수가 자동으로 수신 URL 경로의 {월} 부분에 따라 인구가 될 것이다 다음 액션 메소드에서

:

public ActionResult Index(string month) { 
    if(month == "1") 
     //Happy New Year! 
}