【发布时间】:2016-04-13 07:08:57
【问题描述】:
我在传递价值方面遇到了问题。我是 MVC 的初学者,我读到了 ViewBag、TempData,我知道它不应该工作,但我不知道如何让它工作。我的问题:
有 2 个模型:Animal 和 Visit
在我的 AnimalView 中,我得到了所有动物的列表,并且得到了这个 ActionLink:
@Html.ActionLink("Add Visit", "Create", "Visit", new { id = item.AnimalID }, null)
它转到通过 id 的 Create GET 方法,我得到一个视图来创建访问我可以提交它,一切都很好,但是..
例如,如果我没有设置访问时间,模型将不会更新,并且当方法返回 Create Visit 查看我已经没有 AnimalID... 可以告诉我如何发帖失败时保持这个值吗?
public ActionResult Create(int id) { 动物 动物 = db.Animals.Find(id); 如果(动物 == 空) { 返回 HttpNotFound(); }
TempData["AnimalID"] = id;
return View();
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "VisitID,AnimalID,DoctorID,VisitDate,VisitHour,Price,Recognition,Medicines,VisitDescription")] Visit visit)
{
if (ModelState.IsValid)
{
visit.DoctorID = (int)Session["Doctors"];
db.Visits.Add(visit);
db.SaveChanges();
return RedirectToAction("Index");
}
return View(visit);
}
【问题讨论】:
-
向我们展示您的创建访问操作并查看代码。
标签: asp.net-mvc