2011-05-09 7 views
0

정의 된 뷰 폴더 내에있는 부분 뷰에서 FAQ를 가져 오는 FAQ 페이지를 만들고 싶습니다. 각 부분보기에는 질문, 대답 및 일부 정렬 순서 필드가 포함됩니다.ASP.NET MVC 3 : 뷰 폴더 내에서 부분 뷰 가져 오기

보기 폴더 내에 전체보기 목록을 제공하는 항목을 찾을 수 없습니다.이 자주 묻는 질문은 다음과 같이 보일 것입니다 : 명확한 설명을 위해

업데이트

@model Busker.MVC.Models.FAQ.FAQModel 
    @{ 
     var title = "What is xxxxx?";  
    } 
    <p> 
     Please register @Html.ActionLink("Register", "register", "Member") here. 
    </p> 

모두 표시 모든 자주 묻는 질문을 반복하고 처음으로 질문과 고정 된 링크를 표시해야하는 질문의 인덱스 페이지 제목과 질문을 블록으로

ViewAllFaqsModel에서보기를로드하는 또 다른 방법이 있습니다. Havent '는 모델 컬렉션에 부분 뷰를 가져 오는 방법을 알아 냈습니다.

답변

0

부분 뷰를 사용하는 방법이 잘못되었습니다. 부분 뷰는 재사용되고 실제로 내용을 포함하는 파일이 아니도록 작성됩니다.

내가하는 일 : 질문, 답변 및 주문 입력란이 포함 된 파일 (XML) 또는 데이터베이스를 만들고, 자주 작성한 사이트에서 모델을 만들고 출력하십시오.

그래서 당신은 당신의 영문 파일 같은 것을 할 수 있습니다 : 당신이 무슨 말을 대부분의 당신과 함께 있어요

<% foreach(FAQEntry faqentry in faqentries) 
{ %> 
    <h2><%= faqentry.Question %><2/> 
    <!-- And so on... --> 
<% } %> 
+0

합니다. 내가 xml-like 접근법을 사용하고 싶지 않은 이유는 faqs 내부에서 여전히 @Html 헬퍼 인 면도기 기능을 사용할 수 없기 때문입니다. 내가 현재보고있는 해결 방법은 모든 faq-partial-views를 등록한 모델을 만든 다음 한 번에 렌더링하는 모델을 만드는 것입니다. – AyKarsi

+0

Con은 FAQ를 컨트롤러에있는 xml에 저장하고 모델에로드 할 수 있습니다. html 헬퍼를 사용할 수 있습니다. 귀하의 biew의 유일한 책임은 XML에서 그것을 얻는 것이 아니라 귀하의 데이터에 양식을 제공해야합니다. mvc를 사용하도록 설계된 방식으로 사용하십시오. – Jonathan

0

내가 언급 한 필드가있는 ViewModel을 여러 번 전달할 때만 부분 뷰 하나만 필요하다고 생각합니다.