何时调用SaveChanges
假设我在Controller
调用了类似的东西:
using (var context = new SqlContext()) { context.Items.Add(new Item("item1")); }
我应该调用context.SaveChanges();
?
entity framework使用DbContext实现工作模式单元,这意味着您可以定义要对数据库执行的事项包,然后调用保存更改以将它们全部传播到数据库。 所有操作都将在单个事务中执行(对于单个saveChanges调用),这意味着将全部或全部操作一次传播到数据库。
在调用保存更改之前,更改将应用于本地跟踪图,但不会应用于数据库本身,直到调用savechanges。
是。
在context.SaveChanges();
之前,您所做的每项更改都不会保存context.SaveChanges();
叫做。
请注意,如果您将拥有来自其他DbContext的对象(绝对不是您提供的情况),则应该使用以下代码行显式更改实体状态:
Item item = new Item("item1") db.Entry(item).State = EntityState.Modified; db.SaveChanges();
- 非常接近,但不能完全覆盖核心视图nopcommerce
- MVC4 SignalR“signalr / hubs”501未实现错误
- 如果我希望使用ASP.NET MVC4创建ApiKey受限资源,我应该使用IAuthorizationFilter吗?
- ASP.Net MVC:如何使用递归技术显示嵌套的父子关系
- 带有自定义标头的MVC重定向
- MVC Web API绑定模型到派生类
- 如何使用DropDownList绑定到WebGrid razor asp net mvc 4内的模型?
- asp.net MSDeployEnableWebConfigEncryptRule无法加密web.config
- PdfPTable单元格宽度