Asp.net 实体框架6更新记录保存更改不做任何操作
我在ASP.NET MVC项目中使用以下代码来更新记录(使用来自AngularJS代码的JSON调用,但这不会有什么区别,对吧?) 当我逐步浏览代码时,“pers”对象和“person”对象的属性看起来都很棒。但是当我到达“db.SaveChange()”行时,代码什么也不做。我没有犯错误,但我也从来没有超越它。就好像代码刚刚结束 我也尝试了我找到的这段代码,但是SaveChanges行同样没有任何作用Asp.net 实体框架6更新记录保存更改不做任何操作,asp.net,entity-framework-6,Asp.net,Entity Framework 6,我在ASP.NET MVC项目中使用以下代码来更新记录(使用来自AngularJS代码的JSON调用,但这不会有什么区别,对吧?) 当我逐步浏览代码时,“pers”对象和“person”对象的属性看起来都很棒。但是当我到达“db.SaveChange()”行时,代码什么也不做。我没有犯错误,但我也从来没有超越它。就好像代码刚刚结束 我也尝试了我找到的这段代码,但是SaveChanges行同样没有任何作用 public JsonResult UpdatePerson(Person person)
public JsonResult UpdatePerson(Person person)
{
db.People.Attach(person);
db.Entry(person).State = EntityState.Modified;
db.SaveChanges();
return Json(new { status = "Person successfully saved." });
}
知道这里发生了什么吗?从我在各地找到的所有文章来看,这应该是可行的,但事实并非如此。再说一遍:没有错误。代码停止了。我从来没有进入过“returnJSON”行 什么是db?你能演示一下你是如何实例化它的吗?什么都不做是什么意思?它是否抛出异常,而您没有捕获它,但在DB中没有副作用?它是否执行并转到下一行?它是否无限期地挂起(即死锁)?若要排除异常,请附加调试器或在调用
SaveChanges
时放置try/catch,然后查看是否进入catch(或返回其他结果并记录异常)。
public JsonResult UpdatePerson(Person person)
{
db.People.Attach(person);
db.Entry(person).State = EntityState.Modified;
db.SaveChanges();
return Json(new { status = "Person successfully saved." });
}