2012-02-17 80 views
5

ASP.NET MVC 2MVC動態參數局部方法

我試圖寫它的泛型參數是dynamic一個視圖,然後通過這個動態模型的局部視圖

<%@ Page Title="" ..... Inherits="System.Web.Mvc.ViewPage<dynamic>" %> 

然後

<% Html.RenderPartial("MenuTabsPartial", Model); %> 

,但我得到的錯誤

「System.Web.Mvc.HtmlHelper」有一個名爲沒有適用的方法「的RenderPartial」,但似乎該名稱有一個擴展方法...

我充分認識到,擴展方法不能用動態參數分派。

我的問題是,是否有某種MVC特定的工作?

這個擴展方法必須在公共靜態calss中定義,對嗎?是否有可能從調用的RenderPartial一樣可以使用LINQ:

Enumerable.Where(stringArray, s => s.StartsWith("Adam")); 
+1

看來它在[RenderPartialExtensions(http://msdn.microsoft聲明.com/en-us/library/dd492211.aspx)類。 – 2012-02-17 16:58:33

+0

@JohnH - 甜美。任何想法在RenderAction聲明?目前沒有RenderActionExtensions類,谷歌目前無益 – 2012-02-17 17:02:19

+0

你很幸運! [ChildActionExtensions](http://msdn.microsoft.com/en-us/library/ee721299.aspx)。 – 2012-02-17 17:03:36

回答

6

你可以在RenderPartialExtensionsRenderPartialRenderActionChildActionExtensions

所以調用這些方法與動態參數,你會怎麼做:

<% RenderPartialExtensions.RenderPartial(Html, "MenuTabsPartial", Model); %> 

<% ChildActionExtensions.RenderAction(Html, "List", Model); %> 
+2

+1 - '我不知道'大聲笑,布里爾 – 2012-02-17 17:09:37