EntityFrameworkQueryableExtensions.AsNoTrackingWithIdentityResolution<TEntity> 方法

定義

變更追蹤器不會追蹤從 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>

內容不會追蹤結果集的新查詢。

例外狀況

sourcenull

備註

停用變更追蹤對於唯讀案例很有用,因為它可避免為每個實體實例設定變更追蹤的額外負荷。 如果您想要操作實體實例,並使用 將那些變更保存到資料庫 SaveChanges() ,則不應該停用變更追蹤。

系統會執行身分識別解析,以確保結果集中具有指定索引鍵的所有實體出現都會由相同的實體實例表示。

查詢的預設追蹤行為可由 控制 QueryTrackingBehavior

如需詳細資訊和範例 ,請參閱 EF Core 中的無追蹤查詢

適用於