EF ChangeTracker.Entries()。无法识别的地方

时间:2016-04-22 15:45:35

标签: c# entity-framework asp.net-mvc-4

使用VS2010 SP1 MVC4和EF6。我有这个非常通用的代码。它意味着获取DateCreated和DateModified属性并在每次保存时填充它们。

foreach (var history in this.ChangeTracker.Entries()
    .Where(e => e.Entity is IModificationHistory && (e.State == EntityState.Added ||
      e.State == EntityState.Modified))
    .Select(e => e.Entity as IModificationHistory))
{
    history.DateModified = DateTime.Now;
    if (history.DateCreated == DateTime.MinValue)
    {
        history.DateCreated = DateTime.Now;
    }
}
int result = base.SaveChanges();

我在.Where上收到错误。当我在. Entries()之后放置Where时,智能感知器不为GetType提供选项,只提供5个标准try { authentication = super.validateRequest(req, res, mandatory); } catch (Exception e) { try{ HttpServletResponse r = (HttpServletResponse) res; r.setHeader("WWW-Authenticate", "Basic"); r.setStatus(401); } catch(Exception ew){} authentication = Authentication.SEND_FAILURE; } 等。如果我删除了where子句,那么.Select显示错误。

代码出了什么问题?

1 个答案:

答案 0 :(得分:1)

意志是否正确 - 我没有使用声明。非常尴尬。谢谢。