2011-09-08 5 views
1

주위를 검색하고있는이 질문에 대한 최근 답변을 찾지 못했습니다.MVC에서 문자열 부분 뷰 3

다른 답변은 MVC 프레임 워크의 버전 1 & 2 개에 초점을 맞추고 있습니다.

이제 MVC 3을 사용하여 부분 뷰를 문자열로 실행하고 반환하는 간단한 방법이 있습니까? 아니면 여전히 우리 자신의 솔루션을 구현해야합니까? 같은 다른 답변에서 찾을 수 있습니다으로 :

ASP.NET MVC Razor: How to render a Razor Partial View's HTML inside the controller action

(허용 대답에 표시되는 문서는 MVC 2를 의미 참고).

답변

2

MVC3에서 부분 문자열을 렌더링하려면 HtmlHelper.Partial 메서드를 사용할 수 있습니다.

지정된 부분보기를 HTML 인코딩 된 문자열로 렌더링합니다.

자료 : 이러한 예는 I 콜렉션에 기초하여 단일 부분의 n 배의 렌더링을 가능하게 RenderPartials 위해 쓴 HtmlHelper 확장에서 알 수 MSDN

. (보기에서 루프 필요성 완화)

public static void RenderPartials<T>(this HtmlHelper helper, 
            string partialViewName, 
            IEnumerable<T> models, 
            string htmlFormat) 
     { 
      if (models == null) 
       return; 

      foreach (var result in models 
            .Select(
             item => helper.Partial(partialViewName, item))) 
      { 
       helper.ViewContext.Writer.Write(htmlFormat, result); 
      } 
     }