2011-09-08 56 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編碼的字符串。

來源:MSDN

這種情況的一個例子可以在HtmlHelper擴展,我寫爲RenderPartials啓用的基於集合的單個部分的n倍的再現中可以看出。 (減輕視圖中對環路的需求)

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); 
      } 
     }