Jazyk

ChangeTracker.TrackGraph Metoda

Definice

Přetížení

Název Description
TrackGraph(Object, Action<EntityEntryGraphNode>)

Začne sledovat entitu a všechny entity, které jsou dostupné procházením jeho navigačních vlastností. Procházení je rekurzivní, takže budou prohledány také navigační vlastnosti všech zjištěných entit. Zadaná callback entita se volá pro každou zjištěnou entitu State a musí nastavit, ve které se má každá entita sledovat. Pokud není nastavený žádný stav, zůstane entita nesledovaná.

TrackGraph<TState>(Object, TState, Func<EntityEntryGraphNode,TState,Boolean>)

Začne sledovat entitu a všechny entity, které jsou dostupné procházením jeho navigačních vlastností. Procházení je rekurzivní, takže budou prohledány také navigační vlastnosti všech zjištěných entit. Zadaná callback entita se volá pro každou zjištěnou entitu State a musí nastavit, ve které se má každá entita sledovat. Pokud není nastavený žádný stav, zůstane entita nesledovaná.

Tato metoda je určená pro použití v odpojených scénářích, kdy se entity načítají pomocí jedné instance kontextu a pak se změny uloží pomocí jiné instance kontextu. Příkladem je webová služba, kde jedno volání služby načítá entity z databáze a jiné volání služby zachovají všechny změny entit. Každé volání služby používá novou instanci kontextu, která je uvolněna po dokončení volání.

Při výskytu již sledované entity nebo při dosažení entity, která by neměla být sledována, by se měla obvykle zastavit procházení grafu. Pro toto typické chování použijte TrackGraph(Object, Action<EntityEntryGraphNode>) přetížení. Toto přetížení na druhé straně umožňuje zpětnému volání rozhodnout, kdy bude procházení ukončeno, ale onus je pak na volajícím, aby se zajistilo, že procházení nepřejde do nekonečné smyčky.

TrackGraph<TState>(Object, TState, Func<EntityEntryGraphNode<TState>,Boolean>)

Začne sledovat entitu a všechny entity, které jsou dostupné procházením jeho navigačních vlastností. Procházení je rekurzivní, takže budou prohledány také navigační vlastnosti všech zjištěných entit. Zadaná callback entita se volá pro každou zjištěnou entitu State a musí nastavit, ve které se má každá entita sledovat. Pokud není nastavený žádný stav, zůstane entita nesledovaná.

TrackGraph(Object, Action<EntityEntryGraphNode>)

Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs

Začne sledovat entitu a všechny entity, které jsou dostupné procházením jeho navigačních vlastností. Procházení je rekurzivní, takže budou prohledány také navigační vlastnosti všech zjištěných entit. Zadaná callback entita se volá pro každou zjištěnou entitu State a musí nastavit, ve které se má každá entita sledovat. Pokud není nastavený žádný stav, zůstane entita nesledovaná.

public virtual void TrackGraph(object rootEntity, Action<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntryGraphNode> callback);
abstract member TrackGraph : obj * Action<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntryGraphNode> -> unit
override this.TrackGraph : obj * Action<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntryGraphNode> -> unit
Public Overridable Sub TrackGraph (rootEntity As Object, callback As Action(Of EntityEntryGraphNode))

Parametry

rootEntity
Object

Entita, ze které chcete začít přecházet.

callback
Action<EntityEntryGraphNode>

Akce pro konfiguraci informací o sledování změn pro každou entitu Aby se entita začala sledovat, musí být nastavená State .

Poznámky

Tato metoda je určená pro použití v odpojených scénářích, kdy se entity načítají pomocí jedné instance kontextu a pak se změny uloží pomocí jiné instance kontextu. Příkladem je webová služba, kde jedno volání služby načítá entity z databáze a jiné volání služby zachovají všechny změny entit. Každé volání služby používá novou instanci kontextu, která je uvolněna po dokončení volání.

Pokud je zjištěna entita, která je již sledována kontextem, tato entita není zpracována (a její navigační vlastnosti nejsou procházené).

Další informace a příklady najdete v tématu EF Core Change Tracking .

Platí pro

TrackGraph<TState>(Object, TState, Func<EntityEntryGraphNode,TState,Boolean>)

Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs

Začne sledovat entitu a všechny entity, které jsou dostupné procházením jeho navigačních vlastností. Procházení je rekurzivní, takže budou prohledány také navigační vlastnosti všech zjištěných entit. Zadaná callback entita se volá pro každou zjištěnou entitu State a musí nastavit, ve které se má každá entita sledovat. Pokud není nastavený žádný stav, zůstane entita nesledovaná.

Tato metoda je určená pro použití v odpojených scénářích, kdy se entity načítají pomocí jedné instance kontextu a pak se změny uloží pomocí jiné instance kontextu. Příkladem je webová služba, kde jedno volání služby načítá entity z databáze a jiné volání služby zachovají všechny změny entit. Každé volání služby používá novou instanci kontextu, která je uvolněna po dokončení volání.

Při výskytu již sledované entity nebo při dosažení entity, která by neměla být sledována, by se měla obvykle zastavit procházení grafu. Pro toto typické chování použijte TrackGraph(Object, Action<EntityEntryGraphNode>) přetížení. Toto přetížení na druhé straně umožňuje zpětnému volání rozhodnout, kdy bude procházení ukončeno, ale onus je pak na volajícím, aby se zajistilo, že procházení nepřejde do nekonečné smyčky.

public virtual void TrackGraph<TState>(object rootEntity, TState state, Func<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntryGraphNode,TState,bool> callback);
abstract member TrackGraph : obj * 'State * Func<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntryGraphNode, 'State, bool> -> unit
override this.TrackGraph : obj * 'State * Func<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntryGraphNode, 'State, bool> -> unit
Public Overridable Sub TrackGraph(Of TState) (rootEntity As Object, state As TState, callback As Func(Of EntityEntryGraphNode, TState, Boolean))

Parametry typu

TState

Typ stavového objektu.

Parametry

rootEntity
Object

Entita, ze které chcete začít přecházet.

state
TState

Objekt libovolného stavu předaný zpětnému volání.

callback
Func<EntityEntryGraphNode,TState,Boolean>

Delegát nakonfiguruje informace o sledování změn pro každou entitu. Druhým parametrem zpětného volání je objekt libovolného stavu předaný výše. Iterace grafu nebude pokračovat v grafu, pokud zpětné volání vrátí false.

Platí pro

TrackGraph<TState>(Object, TState, Func<EntityEntryGraphNode<TState>,Boolean>)

Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs
Zdroj:
ChangeTracker.cs

Začne sledovat entitu a všechny entity, které jsou dostupné procházením jeho navigačních vlastností. Procházení je rekurzivní, takže budou prohledány také navigační vlastnosti všech zjištěných entit. Zadaná callback entita se volá pro každou zjištěnou entitu State a musí nastavit, ve které se má každá entita sledovat. Pokud není nastavený žádný stav, zůstane entita nesledovaná.

public virtual void TrackGraph<TState>(object rootEntity, TState state, Func<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntryGraphNode<TState>,bool> callback);
public virtual void TrackGraph<TState>(object rootEntity, TState? state, Func<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntryGraphNode<TState>,bool> callback);
abstract member TrackGraph : obj * 'State * Func<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntryGraphNode<'State>, bool> -> unit
override this.TrackGraph : obj * 'State * Func<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntryGraphNode<'State>, bool> -> unit
Public Overridable Sub TrackGraph(Of TState) (rootEntity As Object, state As TState, callback As Func(Of EntityEntryGraphNode(Of TState), Boolean))

Parametry typu

TState

Typ stavového objektu.

Parametry

rootEntity
Object

Entita, ze které chcete začít přecházet.

state
TState

Objekt libovolného stavu předaný zpětnému volání.

callback
Func<EntityEntryGraphNode<TState>,Boolean>

Delegát pro konfiguraci informací o sledování změn pro každou entitu. Druhým parametrem zpětného volání je objekt libovolného stavu předaný výše. Iterace grafu nebude pokračovat v grafu, pokud zpětné volání vrátí false.

Poznámky

Tato metoda je určená pro použití v odpojených scénářích, kdy se entity načítají pomocí jedné instance kontextu a pak se změny uloží pomocí jiné instance kontextu. Příkladem je webová služba, kde jedno volání služby načítá entity z databáze a jiné volání služby zachovají všechny změny entit. Každé volání služby používá novou instanci kontextu, která je uvolněna po dokončení volání.

Při výskytu již sledované entity nebo při dosažení entity, která by neměla být sledována, by se měla obvykle zastavit procházení grafu. Pro toto typické chování použijte TrackGraph(Object, Action<EntityEntryGraphNode>) přetížení. Toto přetížení na druhé straně umožňuje zpětnému volání rozhodnout, kdy bude procházení ukončeno, ale onus je pak na volajícím, aby se zajistilo, že procházení nepřejde do nekonečné smyčky.

Další informace a příklady najdete v tématu EF Core Change Tracking .

Platí pro