以下代码演示了实体框架存在的问题。假设“ bob”在会话表中有很多记录。
我希望sessionCountB比sessionCountA小1:
using (var context = new MyEFContext)
{
int sessionCountA = (from a in context.sessions
where a.user = 'bob' select a).Count();
sessions firstSession = (from a in context.sessions
where a.user = 'bob').FirstOrDefault();
context.sessions.DeleteObject(firstSession);
int sessionCountB = (from a in context.sessions
where a.user = 'bob' select a).Count();
// I expect sessionCountB == sessionCountA - 1
}
Run Code Online (Sandbox Code Playgroud)
我知道DeleteObject仅标记要删除的对象-SaveChanges在数据库上进行删除。
但是在调用SaveChanges之前,是否不应该从我对同一数据模型执行的其他查询中排除已删除的对象吗?
| 归档时间: |
|
| 查看次数: |
868 次 |
| 最近记录: |