2011-07-26 4 views
0

ASP.NET MVC 3을 사용하여 커다란 프로젝트를 만들지는 않았지만 프레임 워크를 디자인하고 사용하기 위해 노력하고 있습니다. 그래서 Html Helpers에 미친 듯이 떠들기 전에 MVC 3에서 "사용자 정의 컨트롤"을 만드는 가장 좋은 방법이 궁금합니다.MVC 3에서 ASCX-Code Behind의 무엇이 있습니까?

다음은 간단한 예제입니다. 동적으로 생성 된 탐색 메뉴가있을 수 있습니다. 메뉴 항목은 사이트에있는 위치, 정적 메뉴 항목, 데이터베이스를 기반으로 한 동적 메뉴 등을 기준으로 결정됩니다.

NavMenu를보기에서 분리하는 동안 두 가지 방법으로 볼 수 있습니다. 부분보기 또는 HTML 도우미를 만드는 것입니다.

부분보기는 100 가지의 작은 구성 요소가있을 수 있기 때문에 이동하는 방법 인 것 같습니다. 그러나 Partial View는 (내 이해에 따라) 모델 논리가 아닌 표현 계층에만주의를 기울이는 것으로 가정합니다. 동시에, 나는 메인 뷰의 모델이 각각의 부분 뷰에 대해 100 개의 서브 모델을 포함하는 것을 원하지 않는다.

나는 ViewBag에 물건을 넣어야합니까? ViewBag/ViewData를 부분 뷰를 렌더링하는 데 필요한 것으로 채우는 데 필요한 기본 컨트롤러가 있어야합니까? 또는 올바른 방법은 HtmlHelpers를 만들고 C#을 사용하여 모든 HTML을 생성하는 것입니다.

내 관심사는 코드의 유지 가능성, 성능 및 디자이너가 동일한 콘텐츠의 다양한 시각적 표현으로 놀기 위해 제품에 액세스 할 수있게하는 것입니다.

즉, MVC 3에서 ASCX + Code-Behind는 무엇입니까?

답변

1

데이터를 모델로 수집하고 부분 뷰를 반환하는 별도의 메뉴 컨트롤러에서 하위 작업을 수행해야합니다.
다른 작업에 동일한 모델을 사용할 수 있습니다.

+0

빙고! 나는 아동 행동에 대해 몰랐다. 조사하겠습니다.하지만 정확히 내가 찾고있는 것 같습니다. –

관련 문제