Asp.net mvc asp.net mvc从摘要视图执行OrderProduct操作
我有以下问题,, 我正在为网上商店创建订购产品的功能。 一切正常,用户可以添加产品到购物车。这是用户完成订单的方式: 用户进入购物车(cartview), 用户必须提供装运详细信息(shippingDetailsView), 显示摘要页面(摘要视图), 正在向服务器发送订单, 显示感谢页面 但是,当用户单击summaryView(由OrderViewModel类强类型)中的“继续”按钮时,将执行CompleteOrder操作,该操作将获取以下参数:Asp.net mvc asp.net mvc从摘要视图执行OrderProduct操作,asp.net-mvc,binding,Asp.net Mvc,Binding,我有以下问题,, 我正在为网上商店创建订购产品的功能。 一切正常,用户可以添加产品到购物车。这是用户完成订单的方式: 用户进入购物车(cartview), 用户必须提供装运详细信息(shippingDetailsView), 显示摘要页面(摘要视图), 正在向服务器发送订单, 显示感谢页面 但是,当用户单击summaryView(由OrderViewModel类强类型)中的“继续”按钮时,将执行CompleteOrder操作,该操作将获取以下参数: public ViewResult Compl
public ViewResult CompleteOrder(ShoppingCart shoppingCart, OrderViewModel orderViewModel, string returnUrl)
OrderViewModel类如下所示
public class OrderViewModel
{
public Order Order { get; set; }
public string ReturnUrl { get; set; }
}
问题是我的orderViewModel对象中的Order对象为空。我在summaryView中创建了一些hiddenfields,以便通过适当的方式传递订单:
<%: Html.HiddenFor(x => x.Order.Client.Firstname)%>
x.Order.Client.Firstname)%%>
然而,我认为这不是一个好的解决方案。我如何做才合适?既然CompleteOrder已经有了ReturnUrl参数,为什么不简化您的模型并传递订单本身呢:
public ViewResult CompleteOrder(ShoppingCart shoppingCart, Order order, string returnUrl