【发布时间】:2020-10-21 01:49:39
【问题描述】:
我读到here,当您只选择表格的一些列时,“AsNoTracking”是不必要的,因为只能跟踪整个实体。
示例: 如果 Table 有 4 列(Id、Col1、Col2 和 Col3),则完全一样
context
.AsNoTracking()
.Select(x => new {x.Id, x.Col1})
.ToList();
或
context
.Select(x => new {x.Id, x.Col1})
.ToList();
所以:AsNoTracking 是多余的。
我想知道当您执行“ToDictionary”时是否会发生同样的情况。如果我这样做:
context
.ToDictionary(x => x.Id);
是否正在跟踪元素?
另外,我想如果我执行ToDictionary(x => x.Id, new {x.Id, x.Col1}); 之类的操作,将不会因为与以前相同的原因而被跟踪……对吧?
谢谢!
【问题讨论】:
标签: entity-framework-core ef-core-3.1