0

我有一个包含基本表格设置的主布局页面。我有一个用于放入 RenderBody() 的 Main Content 单元格。我有使用 Products 数据库的产品列表,并且右侧有一个需要访问 User 数据库的菜单。如何使用主要内容单元格中的产品模型列出我的产品,并使用用户模型在我的菜单单元格中列出信息?

4

2 回答 2

2

我使用的唯一方法(但我对它的最佳实践状态并不完全有信心)是为页面创建一个模型,其中包括(在你的情况下)product模型和user模型。在控制器中填充这些模型,然后像往常一样在视图中访问内部模型。

于 2012-12-28T21:06:47.487 回答
2

您可以使用部分来呈现内容部分。

想象一下你的页面使用这个模型:

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" )

后一种方法的优点是您可以保持页面模型相对干净,因此它不必包含显示页面所需的所有数据。

于 2012-12-28T21:09:56.577 回答