2010-06-11 3 views
0

클래스에 대한 몇 가지 디스플레이 템플릿을 정의했으며보기/공유/DisplayTemplates에 배치 할 때 잘 작동합니다. 그러나 내가 영역으로 이동 한 후에 ASP.NET MVC는 Area를보고 템플릿을 찾지 않습니다.주 프로젝트에서 영역에 정의 된 DisplayTemplates를 참조하는 방법은 무엇입니까?

주 프로젝트에서 영역에 정의 된 DisplayTemplates를 참조하는 방법은 무엇입니까? 그게 좋은 습관인가요?

답변

1

메인 프로젝트 나 다른 영역의 영역 안에있는 디스플레이 템플릿을 참조 할 수 있다고 생각하지 않습니다.

이것은 매우 논리적이며이 제약 조건을 따라 잡고 해결 방법을 시도해서는 안됩니다. 영역을 응용 프로그램의 분리 된 논리적 부분으로 생각하십시오. 영역 내에 모든 리소스가 있어야합니다. 그러나 마스터 레이아웃이나 다른 영역에서 사용해야하는 로고 이미지와 같은 리소스가있는 경우이 리소스는 모든 프로젝트를 사용할 수 있도록 특정 영역이 아닌 기본 프로젝트 폴더에 배치해야합니다.

+0

나는 단순히 몇 가지 재사용 가능한 영역을 추가하여 주요 응용 프로그램을 확장하고자하기 때문에 면적이 내부 템플릿을 참조하고자하는 이유, 데이터 유형, 그러한 데이터 유형의 표시 템플릿은 모두 영역 내에 있습니다. 이러한 새로운 데이터 유형 (주 응용 프로그램의 클래스에서 상속)에 대해 "displayfor"가 자동으로 해당 영역의 자체 템플릿을 선택하기를 바랍니다. 저는 이것이 꽤 유효한 사용자 시나리오라고 생각합니다. –

1

Shay와 완전히 동의하지 않습니다 - 공유 된 재사용 가능한 영역의 경우 템플릿은 기본 웹 사이트 프로젝트에서 기본 웹 사이트 프로젝트로 지정 될 수 있습니다. TemplateHelper 클래스는 템플릿을 찾을 때 고려해야 할 영역을 고려해야합니다.

이 그래도, 해결하는 것은 매우 쉽다 - see my other post here

관련 문제