여러 컨트롤러를 단일 뷰 디렉토리에 매핑하는 방법이 있습니까? 내 응용 프로그램에서 나는 컨트롤러와 뷰 사이에 1 대 1 매핑을 원합니다. 그 이유는 각보기가 제어기가 여러 가지보기를 제공하고 제어기 당 여러 개의보기를 갖는 다양한 아약스 조치를 갖게되어 지나치게 큰 제어기를 초래하기 때문입니다.ASP.NET MVC3 컨트롤러를 뷰에 매핑
은 현재이 같은 뭔가를 :
/Controllers
/Dir1Controller
...
/Views
/Dir1
/FirstView.cshtml
/SecondView.cshtml
...
그래서있는 Dir1 컨트롤러 디렉토리에있는 Dir1에 대한지도와 전망 FirstView, SecondView 등 대신에 모든 작업을 제공 할 필요가 , 나는 이런 식으로 뭔가를 선호 :
/Controllers
/FirstController
/SecondController
...
두 컨트롤러가 모두 Dir1에 매핑되지만 작업이 실행될 때 적절한보기를 반환합니다.
이 중 아무 것도 경로 매핑 측에서 문제가되는 것 같지 않지만 올바른보기를 찾는 방법을 알려주는 방법이없는 것처럼 보입니다. FirstController는/Views/First에서보기 만 찾습니다./Views/Dir1을 보도록 지시 할 수있는 방법이 있습니까?
지역을 사용하여 살펴 보았지만 큰 사이트를 비웃는 방향으로 향하는 것처럼 보입니다. 개념적으로이 모든 페이지는 동일한 영역의 일부 여야합니다. 난 그냥 내 컨트롤러의 크기를 경계하고 싶습니다.
논리를 뒤집고 Ajax 호출마다 별도의 컨트롤러를 만드는 것이 좋습니다. 심지어 그 중 일부를 재사용 할 수도 있습니다. – Druegor