當談到.NET MVC時,我仍然感到有些遺憾。我有一個從MasterPage調用的導航部分視圖,我希望獲取數據列表。此部分視圖位於「共享」文件夾中,因此沒有控制器。我如何獲取數據以便它可以呈現列表?將數據獲取到共享的部分視圖
感謝
更具體地說,我想要做這樣的事情(僞):
<ul>
<% foreach (item in ListOfItems) {
Response.Write(formattedListItem);
} %>
</ul>
當談到.NET MVC時,我仍然感到有些遺憾。我有一個從MasterPage調用的導航部分視圖,我希望獲取數據列表。此部分視圖位於「共享」文件夾中,因此沒有控制器。我如何獲取數據以便它可以呈現列表?將數據獲取到共享的部分視圖
感謝
更具體地說,我想要做這樣的事情(僞):
<ul>
<% foreach (item in ListOfItems) {
Response.Write(formattedListItem);
} %>
</ul>
[編輯]現在,新的有用的鏈接,我知道完整的故事
與傳統頁面一樣,您傳入視圖模型。只有在調用控制器中的View(...)時纔會使用輔助方法。類似:
<% Html.RenderPartial("~/Views/Shared/Navigation.ascx", Model.MenuItems); %>
要傳遞在(在這種情況下Model.MenuItems)將可能來自於視圖,其中正在使用的局部視圖的模型(如在上述示例的情況下的數據)。
好吧,這是被從母版叫,不具有訪問任何數據... – Jason
只需使用RenderAction。 RenderAction會在你選擇的控制器上調用該方法,並獲得你想要顯示的結果。你甚至可以從這個方法返回一個PartialView。
<% Html.RenderAction("actionName", "controllerName"); %>
希望有幫助。
我不會在IntelliSense從'Html.'得到'RenderAction'選項 – Jason
備案,這些解決方案的工作,所以我只是ajaxed它在:\ – Jason