EntityFrameworkQueryableExtensions.AsNoTrackingWithIdentityResolution<TEntity> 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
更改跟踪器不会跟踪从 LINQ 查询返回的任何实体。 如果修改了实体实例,则更改跟踪器不会检测到这一点,并且 SaveChanges() 不会将这些更改保存到数据库。
public static System.Linq.IQueryable<TEntity> AsNoTrackingWithIdentityResolution<TEntity> (this System.Linq.IQueryable<TEntity> source) where TEntity : class;
static member AsNoTrackingWithIdentityResolution : System.Linq.IQueryable<'Entity (requires 'Entity : null)> -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function AsNoTrackingWithIdentityResolution(Of TEntity As Class) (source As IQueryable(Of TEntity)) As IQueryable(Of TEntity)
类型参数
- TEntity
正在查询的实体的类型。
参数
- source
- IQueryable<TEntity>
源查询。
返回
IQueryable<TEntity>
上下文不会跟踪结果集的新查询。
例外
source
上声明的默认值为 null
。
注解
禁用更改跟踪对于只读方案很有用,因为它避免了为每个实体实例设置更改跟踪的开销。 如果要操作实体实例并使用 将这些更改保存到数据库 SaveChanges(),则不应禁用更改跟踪。
将执行标识解析,以确保结果集中具有给定键的实体的所有匹配项都由同一实体实例表示。
查询的默认跟踪行为可由 控制 QueryTrackingBehavior。
有关详细信息和示例,请参阅 EF Core 中的无跟踪查询 。