我正在使用asp.net mvc和Entity Framwork。我仍然熟悉这个堆栈。我想包含与传递给视图的模型没有外键关系的数据。在视图模型中包含无关数据
最初,该模型被传递给这样的观点...
public ActionResult Edit(int id = 0)
{
booking booking = db.bookings.Find(id);
return View(booking);
}
我需要在视图中没有与预订一FK关系的数据。
我试图创建一个单独的类把两个实体的...
public ActionResult Edit(int id = 0)
{
booking booking = db.bookings.Find(id);
viewModel.bookingtraces = (from l in db.traces where l.bookingid == booking.bookingid select l);
viewModel.bookings = booking;
return View(viewModel);
}
目前,我得到一个错误,这个虽然。一开始页面将加载,但尝试更新的时候,我得到
Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities were loaded. Refresh ObjectStateManager entries.
我也尝试添加一个条目构建器明确定义的关系,但没有奏效。
最终,问题是,如果两个实体之间没有FK关系,我如何在视图中访问不是要传递的模型的一部分的数据?
你可以通过viewbag也 – Miller
感谢米勒。我需要能够调用保存预订跟踪,ViewBag不允许据我所知。 – tintyethan
您是否尝试过在查询后添加.ToArray()? IMO应该在控制器中填充视图模型,而不是等待视图执行以便查询运行 – MikeSW