如何解决在ASP.NET MVC 3中编辑操作
| 我想在“编辑动作”方法中保存调用编辑动作时所做的所有更改。但是我想我缺少一些想法。这就是我正在尝试的。[HttpPost]
public ActionResult Edit(Person editPerson)
{
if (ModelState.IsValid)
{
// may be here I want to add soething
return RedirectToAction(\"Index\");
}
else
{
return View(editPerson);
}
}
解决方法
您正在使用什么来保存Person对象?您使用的是实体框架还是纯SQL?我猜想是因为您正在使用MVC3,而您正在使用Entity Framework。如果我看到您的方法,则您很可能尝试创建一个人,然后编辑一个人。如果您要编辑的方法通常看起来像
public ActionResult Edit(int id,Person editPerson)
在这种情况下
using(SomeContext db = new SomeContext())
{
db.Persons.Add(editPerson);
db.SaveChanges();
}
如果编辑
using(SomeContext db = new SomeContext())
{
Person person = db.Persons.Find(id);
// Update your fields
db.SaveChanges();
}
,因为与后备存储进行交互的方式有多种,所以我们需要有关您如何进行操作的更多信息(实体框架,LINQ to SQL等)。如果您尚未签出,则应该阅读著名的《书呆子晚餐教程》中Scott Hanselman的博客,《探索不同的数据库选项》。这将引导您朝正确的方向发展。 (此外,如果您还没有玩过Nerd Dinner,我强烈建议您这样做,因为它是对MVC及其周围各种技术的出色介绍。)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。