EntityFrameworkQueryableExtensions.AsTracking 方法

定义

重载

AsTracking<TEntity>(IQueryable<TEntity>)

返回一个新查询,其中更改跟踪器将跟踪返回的所有实体的更改。 在 期间 SaveChanges(),将检测到对实体实例所做的任何修改并将其保存到数据库。

AsTracking<TEntity>(IQueryable<TEntity>, QueryTrackingBehavior)

返回一个新查询,其中更改跟踪器将跟踪所返回的所有实体的更改,具体取决于“track”参数的值。 跟踪时,将检测对实体实例的任何修改,并在 期间 SaveChanges()保存到数据库。 不跟踪时,如果修改了实体实例,更改跟踪器将不会检测到这些更改,也不会 SaveChanges() 将这些更改保存到数据库。

AsTracking<TEntity>(IQueryable<TEntity>)

返回一个新查询,其中更改跟踪器将跟踪返回的所有实体的更改。 在 期间 SaveChanges(),将检测到对实体实例所做的任何修改并将其保存到数据库。

public static System.Linq.IQueryable<TEntity> AsTracking<TEntity> (this System.Linq.IQueryable<TEntity> source) where TEntity : class;
static member AsTracking : System.Linq.IQueryable<'Entity (requires 'Entity : null)> -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function AsTracking(Of TEntity As Class) (source As IQueryable(Of TEntity)) As IQueryable(Of TEntity)

类型参数

TEntity

正在查询的实体的类型。

参数

source
IQueryable<TEntity>

源查询。

返回

IQueryable<TEntity>

一个新查询,其中结果集将由上下文跟踪。

例外

source 上声明的默认值为 null

注解

查询的默认跟踪行为可由 控制 QueryTrackingBehavior

有关详细信息和示例,请参阅 在 EF Core 中跟踪查询

适用于

AsTracking<TEntity>(IQueryable<TEntity>, QueryTrackingBehavior)

返回一个新查询,其中更改跟踪器将跟踪所返回的所有实体的更改,具体取决于“track”参数的值。 跟踪时,将检测对实体实例的任何修改,并在 期间 SaveChanges()保存到数据库。 不跟踪时,如果修改了实体实例,更改跟踪器将不会检测到这些更改,也不会 SaveChanges() 将这些更改保存到数据库。

public static System.Linq.IQueryable<TEntity> AsTracking<TEntity> (this System.Linq.IQueryable<TEntity> source, Microsoft.EntityFrameworkCore.QueryTrackingBehavior track) where TEntity : class;
static member AsTracking : System.Linq.IQueryable<'Entity (requires 'Entity : null)> * Microsoft.EntityFrameworkCore.QueryTrackingBehavior -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function AsTracking(Of TEntity As Class) (source As IQueryable(Of TEntity), track As QueryTrackingBehavior) As IQueryable(Of TEntity)

类型参数

TEntity

正在查询的实体的类型。

参数

source
IQueryable<TEntity>

源查询。

track
QueryTrackingBehavior

指示查询是否会跟踪结果。

返回

IQueryable<TEntity>

一个新查询,其中结果集将由上下文跟踪。

例外

source 上声明的默认值为 null

注解

禁用更改跟踪对于只读方案很有用,因为它避免了为每个实体实例设置更改跟踪的开销。 如果要使用 操作实体实例并将这些更改保存到数据库 SaveChanges(),则不应禁用更改跟踪。

查询的默认跟踪行为可由 控制 QueryTrackingBehavior

有关详细信息和示例,请参阅 在 EF Core 中跟踪查询

适用于