2010-02-20 20 views
1

當談到.NET MVC時,我仍然感到有些遺憾。我有一個從MasterPage調用的導航部分視圖,我希望獲取數據列表。此部分視圖位於「共享」文件夾中,因此沒有控制器。我如何獲取數據以便它可以呈現列表?將數據獲取到共享的部分視圖

感謝

更具體地說,我想要做這樣的事情(僞):

<ul> 
<% foreach (item in ListOfItems) { 
    Response.Write(formattedListItem); 
} %> 
</ul> 
+0

備案,這些解決方案的工作,所以我只是ajaxed它在:\ – Jason

回答

1
+0

這是一個好主意,但我需要它的共享局部視圖。我可以得到一個不共享的數據....:/ – Jason

+0

爲什麼它會不同? – pdr

+0

我打電話給我的主控頁面沒有控制器也沒有數據傳遞給它的共享視圖。我需要得到它的數據...有時mvc可能是如此令人沮喪 – Jason

0

與傳統頁面一樣,您傳入視圖模型。只有在調用控制器中的View(...)時纔會使用輔助方法。類似:

<% Html.RenderPartial("~/Views/Shared/Navigation.ascx", Model.MenuItems); %> 

要傳遞在(在這種情況下Model.MenuItems)將可能來自於視圖,其中正在使用的局部視圖的模型(如在上述示例的情況下的數據)。

+0

好吧,這是被從母版叫,不具有訪問任何數據... – Jason

0

只需使用RenderAction。 RenderAction會在你選擇的控制器上調用該方法,並獲得你想要顯示的結果。你甚至可以從這個方法返回一個PartialView。

<% Html.RenderAction("actionName", "controllerName"); %> 

希望有幫助。

+0

我不會在IntelliSense從'Html.'得到'RenderAction'選項 – Jason