从Web API控制器中删除上下文感知

本文关键字:删除 上下文 感知 控制器 Web API | 更新日期: 2023-09-27 18:00:44

假设我有

public IQueryable<Application> GetApplications() {
    var applications = _context.Applications.Where(v => v.Exported == false);
    // Now i want to flag exported = true because i am exporting them
    foreach (var application in applications){
        _context.Applications.SingleOrDefault(v => v.ApplicationId == application .ApplicationId).Exported = true;
}
    _context.SaveChanges();
    return applications;
}

我没有得到任何应用程序,因为_context.SaveChanges();(我想)更改了applications变量。如何在不更改本地变量的情况下更改数据库。

从Web API控制器中删除上下文感知

在更改项目之前调用ToList执行查询:

var applications = _context.Applications.Where(v => v.Exported == false).ToList();