【发布时间】:2011-08-18 15:17:37
【问题描述】:
我正在开发一个 MVC3 项目,其模型是使用 Code First 方法设计的。我正在将 EF4 用于 ORM,并且需要两件事 - 1.拦截context.SaveChages方法 2.仅针对一种特定实体类型进行我自己的自定义更新查询。
我通过重写 SaveChanges() 方法得到了第一部分的工作 -
public override int SaveChanges()
{
var modifiedItems = this.ChangeTracker.Entries().Where(e => e.State == System.Data.EntityState.Modified && e.Entity is myEntityName);
foreach (var item in modifiedItems)
{
//ToDo: Write UPDATE Sql Query here
}
return base.SaveChanges();
}
如何编写更新查询? 谢谢!
【问题讨论】:
-
您想如何编写更新查询?作为 SQL?使用不同的 ORM?无论您如何操作,请确保在保存更改之前从上下文中清除
的修改项,否则上下文将覆盖您所做的任何事情。
标签: asp.net-mvc-3 entity-framework-4 ef-code-first