2012-12-28 44 views
0

我有一個主佈局頁面,有一個基本的表設置。我有一個主要內容單元格用於放置RenderBody()。我有使用產品數據庫的產品列表,並且我在右側需要訪問用戶數據庫的菜單。如何使用Main Content單元中的產品模型列出我的產品,並使用用戶模型列出我的Menu單元格中的信息?如何在MVC 3 ASP.NET的共享佈局頁面上使用兩個模型?

+0

沒有一些代碼示例你的問題有點抽象。 –

回答

2

我使用的唯一方法(但我並不完全相信它是最佳實踐狀態)是爲頁面創建模型,其中包括product模型和user模型。在控制器中填充這些模型,然後像在視圖中一樣訪問內部模型。

2

您可以使用partials來呈現內容部分。

想象一下你的頁面使用此模型:

public class PageModel { 
    public string Title { get; set; } 
    public ProductListModel Products { get; set; } 
} 

然後你就可以使你的部分觀點,並通過模型爲:

@Html.Partial("name of partial view", Model.Products) 

稍微更高的性能昂貴的方法是調用動作呈現局部視圖:

public class ProductsController { 
    public ActionResult List() { 
     var model = new ProductListModel(); 
     return View("your partial view", model); 
    } 
} 

並在您的視圖中:

@Html.Action("list", "products") 

後一種方法的優點是可以保持頁面模型相對乾淨,因此不必包含顯示頁面所需的所有數據。

相關問題