在视图页面中显示部分页面
本文关键字:显示部 分页 视图 | 更新日期: 2023-09-27 18:25:31
我有一个Controller/ShoppingCart,它有一个Action Method Index(),我创建了一个索引视图页面,它是强类型的,使用模型类
Project.Models.ShoppingCartViewModel
我有另一个Controller/Details,它有一个Action Method Confirm(),我创建了一个Confirm视图页面,它也是一个强类型,使用模型类
Project.Models.Confirm
现在我想做的就是创建Index()的部分视图,它将使用@model Project.Models.ShoppingCartViewModel并在确认视图页面的右侧显示此部分页面。两者都是强类型视图。
您应该向ShoppingCartViewModel
类型的Confirm
视图模型添加一个新属性
public class Confirm
{
public ShoppingCartViewModel Cart {set;get;}
//Other Properties of your viewmodel goes here
}
现在在Confirm视图中,调用Html.Partial
助手方法来呈现Partial视图,该视图显示购物车并传递Model.Cart
属性。
@model Project.Models.Confirm
<h2>Confirm order</h2>
@Html.Partial("~/Views/ShoppingCart/_CartPartial.cshtml".Model.Cart)
假设您的局部视图位于~/Views/ShoppingCart/_CartPartial.cshtml
位置。
请确保正确初始化Cart
属性以避免Null引用异常(对象引用未设置为对象实例)
public ActionResult Confirm()
{
var vm = new Confirm();
vm.Cart= new ShoppingCartViewModel();
// Load the Shopping cart property values to vm.Cart
return View(vm);
}