2012-02-17 28 views
5

ASP.NET MVC 2MVC phương pháp từng phần với các thông số động

Tôi đang cố gắng để viết một cái nhìn có tham số chung là dynamic, và sau đó vượt qua mô hình năng động này cho một người xem một phần

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

và sau đó

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

nhưng tôi nhận được lỗi

'System.Web.Mvc.HtmlHelper' không có phương pháp áp dụng có tên là 'renderPartial' nhưng dường như có một phương pháp khuyến nông theo tên mà ...

tôi hoàn toàn nhận thức được rằng phương pháp khuyến nông không thể được gửi đi với thông số động.

Câu hỏi của tôi là, có một số loại công việc cụ thể của MVC xung quanh?

Phương pháp mở rộng này phải được xác định trong một cals tĩnh công khai ở đâu đó, đúng không? Có thể gọi renderPartial từ , như bạn có thể với LINQ:

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

Có vẻ như nó được khai báo trong [RenderPartialExtensions] (http://msdn.microsoft .com/en-us/library/dd492211.aspx). –

+0

@JohnH - ngọt ngào. Bất kỳ ý tưởng nơi RenderAction được khai báo? Không có lớp RenderActionExtensions và google không hữu ích vào lúc này –

+0

Bạn đang may mắn! [ChildActionExtensions] (http://msdn.microsoft.com/en-us/library/ee721299.aspx). –

Trả lời

6

Bạn có thể tìm RenderPartial trong RenderPartialExtensionsRenderAction trong ChildActionExtensions.

Vì vậy, để gọi những phương pháp với một tham số động, bạn sẽ làm:

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

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

+1 - 'tôi không biết rằng' lol, brill –

Các vấn đề liên quan