2011-01-29 3 views
2

MVC 프로젝트 외부의 모델 (비즈니스 계층 프로젝트)을 기반으로 강력한 형식의 뷰를 생성하려고하면 뷰에 대한 코드 생성이 발생하지 않습니다. 예를 들어 내 세부 정보 페이지는 전달 된 모델의 세부 정보를 표시 할 테이블을 자동으로 생성하지 않습니다. 모델이 내 MVC 프로젝트의 내부에있는 경우는 그렇지 않습니다. n 계층 응용 프로그램을 사용할 수 있으며 강력한 형식의 뷰에 대해이 코드 생성을 여전히 사용할 수 있습니까?Asp.net n 계층 응용 프로그램에서 MVC 3 코드 생성이 실패합니다.

편집 : 당신이 강하게을 만들 때 답변 -

의 의견의 Web.config의에 비즈니스 계층의 네임 스페이스에 대한 행을 추가 그래서

<system.web.webPages.razor> 
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    <pages pageBaseType="System.Web.Mvc.WebViewPage"> 
    <namespaces> 
     <add namespace="System.Web.Mvc" /> 
     <add namespace="System.Web.Mvc.Ajax" /> 
     <add namespace="System.Web.Mvc.Html" /> 
     <add namespace="System.Web.Routing" /> 
     <add namespace="<My business layer namespace>" /> 
    </namespaces> 
    </pages> 
    </system.web.webPages.razor> 

그런 다음 코드 생성이 작동처럼 폴더 유형이 지정된보기.

답변

1

시도 사용자 정의 ViewModels 또는 페이지에 네임 스페이스를 가져 오기 :

<%@ Import Namespace="Your.Namespace.Here" %> 

그것은 또한 당신의 Views 폴더에있는 년대 web.configyou may need to add the assembly information 것 같습니다.

+0

귀하의 의견이 코드 생성에 어떻게 도움이되는지 혼란 스럽습니다. 비즈니스 뷰 프로젝트에있는 뷰에 대한 모델을 선택하는 새로운보기> 강력하게 형식화 된 뷰 선택>을 만드는 것에 대해 언급하고 있습니다. 생성 될 때 모델 정보를 테이블로 끌어 오기위한 asp 태그의 자동 생성은 수행되지 않습니다. 그것은 mvc imho에게 가장 큰 이점 중 하나입니다. 그렇다면 어떻게해야 n 티어 애플리케이션을 효과적으로 구축 할 수 있을까요? –

+0

@Matt 내 대답을 더 많은 정보로 업데이트했습니다. –

+0

그럼 MVC의 버그 인 것 같습니까? 와우 ... –

관련 문제