我正在学习ASP.NET MVC,但我遇到了一些问题:
我写了一些Action方法:
public ActionResult GetAllCustomersWithOrders()
{
var orders = db.Customers.Where(p => p.Orders.Count > 1).ToList();
return View(orders);
}
public ActionResult GetAllOrdersFromCustomer()
{
var orders = db.Orders.Include(p => p.Employee).Include(p => p.Customer).Include(p => p.Shipper).Where(p => p.ShipCity == "Seattle").ToList();
return View(orders);
}
当我尝试编辑订单或客户时,我收到400错误。 以下是调用action方法后得到的内容。当我点击编辑或其他任何我有400错误。
这种行为的原因是什么?提前谢谢。
答案 0 :(得分:-1)
您将拥有给定模型的复合主键,即多于一列作为主键。在脚手架生成的默认视图/控制器中,将单列作为其主键,该键也作为参数之一在方法(内部控制器)中传递。因此,您需要提供所有列,作为action方法以及视图中的参数。 请参阅此链接以获取更多详细信息。 https://www.codeproject.com/Articles/797444/ASP-NET-MVC-Edit-Primary-Key-Values-for-Composite