我有一个名为WebpageRoles
的模型类,有一个名为isAccessable
的布尔字段。现在我有一个查询来选择值:
var drafts = db.WebpageRoles.Where(d => d.PageId == pageid && d.RoleId == roID).ToList();
当我构建它时,它会返回isAccessable = true
,但当我手动将其更改为数据库中的false
时,查询将返回相同的值(意味着true
),但数据库包含false
。
当我再次构建它时,它会获得新的价值。
这有什么不对?
答案 0 :(得分:0)
确定您有一个“长时间运行的上下文”。
您的启动代码就是这样:public static SomeDbContext MyGlobalContext = new SomeDbContext()
然后,在您的代码中,您使用MyGlobalContext
。因此,您的上下文仅在启动时回收,并且大部分时间您点击本地缓存而不是数据库。因此,数据库中的直接更改无法到达您的应用程序。