2009-09-30 5 views
1

asp.net 웹 양식과 mvc보기를 모두 포함하는 웹 응용 프로그램이 있지만보기에 강력한 형식의 모델과 관련된 문제가 발생합니다. ASP.NET 및 MVC 하이브리드 응용 프로그램 모델이 작동하지 않습니다.

뷰에서 페이지 지시문입니다 :

<%@ Page Inherits="System.Web.Mvc.ViewPage<Survey.Models.SurveyResponse>" Language="C#" MasterPageFile="~/Views/Shared/ExternalSurvey.Master" %> 

하지만보기에서 나는 모델 속성에 액세스 할 수 없습니다. 컨트롤러에서

내가 왜 내가보기 내에서 모델 속성에 액세스 할 수 없습니다
return (new Survey.Models.SurveyResponse()); 

있나요?

답변

1

보기에서 강력한 형식의 모델을 얻으려면 ViewModel 패턴 outlined here을 사용해야합니다.

+0

나는 이것을 시도했지만 작동하지 않는다. 내 예제는 PaginatedList를 모델로 사용하는 저녁 식사 색인과 매우 비슷하다. – Jon

+0

코드를 게시 할 수 있습니까? 나는이 방법을 사용했고 견해에 강하게 타자를 치는 모형을 얻을 수있다, 그래서 나는 당신이없는 무슨을보기 위하여 부호를 볼 필요가있을 것입니다. –

0

SurveyResponse는 아마도 ViewResponse와 같은 것을 상속한다고 추측합니다. 이것에 대해서는 갈 길이 멀지 않습니다. 오히려, 당신은 당신이보고 싶은 데이터를 캡슐화하는 데이터 객체를 생성해야, 다음 뷰 응답을 통해 전달할 :

MyDataObject obj = new MyDataObject(); 
//set some properties, etc 
return View(MyDataObject); 

그런 다음 당신이 모델의 속성을 통해 강력한 형식의 방식으로 MyDataObject에 액세스 할 수 있습니다.

관련 문제