2013-08-05 5 views
-1

이미지에 표시된대로 세 개의 탭이 있습니다. 각 탭에는 각 테이블과 다른 내용이로드되고 학생 탭에는 학생 테이블의 학생 세부 정보가로드되며 세부 정보 탭에는 연락처 테이블의 연락처 세부 정보가로드되고 마크 탭은 마크에서 학생 마크를로드합니다. 세 개의 테이블은 id라는 공통 속성을 가지고 있습니다. 고유 탭입니다. 세부 정보 탭 및 마크 탭을 클릭하면 학생 이름을 표시하는 방법 참고 : 학생 이름은 학생 테이블에만 있습니다. 내가 학생의 이름을 표시 할 수 있도록두 테이블 속성을 mvc에서 단일보기로 표시하는 방법

@model IEnumerable<SA.Models.Detail> 

난 단지 상세 테이블 속성을로드 할 수있어이 사용은, 내가 어떻게, 상세보기에서 학생 테이블에서 속성을 가져올 수

enter image description here

enter image description here

+0

-1 : (모델 VAR 항목) foreach 문을 사용하여 표시하는 동안 유 관점에서, 제안 이유가 동일했던 것처럼 바보 같은 태그 스팸 –

답변

1

두 테이블을 모두 보유하는 뷰 모델 클래스를 만듭니다.

public class SomeViewModel 
{ 
    public List<string> List1; 
    public List<string> List2; 
    ... 
} 

... 

@model SA.Models.SomeViewModel 
... 
@Model.List1 
... 

목록이 비슷한 경우 부분보기를 만들 수 있습니다.

+0

에 대한 {@ Html.DisplayFor (modelItem => Item.List !1); @ Html.DisplayFor (modelItem => Item.List2)} 다음과 같은 오류가 발생합니다. 사전에 전달 된 모델 항목의 형식이 'System.Collections.Generic.List'1입니다. [SA.Models.Detail]' 이 사전에는 'System.Collections.Generic.IEnumerable'1 [SA.Models.NewModel]'유형의 모델 항목이 필요합니다. – rikky

+0

정확히 무엇을했는지 확신 할 수는 없지만 열거 형 모델에 뷰 모델을 삽입 해보십시오. 현재 뷰 모델을 새로운 모델 (열거 형이 아닌)로 변경하고 컨트롤러에서 해당 모델을 사용하여 데이터를 배치해야합니다. 하지만 지금 당장 무엇을했는지 모르겠다. 코드를 게시하면 도와 줄 수있다. :) – JuhaKangas

+0

올바른 모양이므로보기에서 @model SA.Models.SomeViewModel을 사용하고 있습니까? 오류를 보면 컨트롤러에서 보낸 내용과 실제로 일치하지 않는 것 같습니다. – JuhaKangas

0

보기에서 Foreach를 사용하십시오.

@foreach(var item in Model.List1) 
관련 문제