ChangeTracker.TrackGraph Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přetížení
TrackGraph(Object, Action<EntityEntryGraphNode>) |
Začne sledovat entitu a všechny entity, které jsou dostupné procházením jejích navigačních vlastností.
Procházení je rekurzivní, takže se budou kontrolovat i navigační vlastnosti všech zjištěných entit.
Zadaná |
TrackGraph<TState>(Object, TState, Func<EntityEntryGraphNode<TState>,Boolean>) |
Začne sledovat entitu a všechny entity, které jsou dostupné procházením jejích navigačních vlastností.
Procházení je rekurzivní, takže se budou kontrolovat i navigační vlastnosti všech zjištěných entit.
Zadaná |
TrackGraph<TState>(Object, TState, Func<EntityEntryGraphNode,TState,Boolean>) |
Začne sledovat entitu a všechny entity, které jsou dostupné procházením jejích navigačních vlastností.
Procházení je rekurzivní, takže se budou kontrolovat i navigační vlastnosti všech zjištěných entit.
Zadaná Tato metoda je určená pro použití v odpojených scénářích, kdy se entity načítají pomocí jedné instance kontextu a změny se pak ukládají pomocí jiné instance kontextu. Příkladem je webová služba, kde jedno volání služby načítá entity z databáze a druhé volání služby zachovává jakékoli změny entit. Každé volání služby používá novou instanci kontextu, která je uvolněna po dokončení volání. Procházení grafu by se obvykle mělo zastavit vždy, když se narazí na již sledovanou entitu nebo když dojde k entitě, která by neměla být sledována. 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é volání rozhodnout, kdy procházení skončí, ale onus je pak na volajícím, aby se zajistilo, že procházení nevstoupí do nekonečné smyčky. |
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
Začne sledovat entitu a všechny entity, které jsou dostupné procházením jejích navigačních vlastností.
Procházení je rekurzivní, takže se budou kontrolovat i 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, že 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, od které se má začít procházení.
- 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 hodnota .
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 změny se pak ukládají pomocí jiné instance kontextu. Příkladem je webová služba, kde jedno volání služby načítá entity z databáze a druhé volání služby zachovává jakékoli změny entit. Každé volání služby používá novou instanci kontextu, která je uvolněna po dokončení volání.
Pokud se zjistí entita, která je již sledována kontextem, nezpracuje se (a její navigační vlastnosti se neprojdou).
Další informace a příklady najdete v tématu Sledování změn EF Core .
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
Začne sledovat entitu a všechny entity, které jsou dostupné procházením jejích navigačních vlastností.
Procházení je rekurzivní, takže se budou kontrolovat i 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, že 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 objektu stavu.
Parametry
- rootEntity
- Object
Entita, od které se má začít procházení.
- 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 dolů 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 změny se pak ukládají pomocí jiné instance kontextu. Příkladem je webová služba, kde jedno volání služby načítá entity z databáze a druhé volání služby zachovává jakékoli změny entit. Každé volání služby používá novou instanci kontextu, která je uvolněna po dokončení volání.
Procházení grafu by se obvykle mělo zastavit vždy, když se narazí na již sledovanou entitu nebo když dojde k entitě, která by neměla být sledována. 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é volání rozhodnout, kdy procházení skončí, ale onus je pak na volajícím, aby se zajistilo, že procházení nevstoupí do nekonečné smyčky.
Další informace a příklady najdete v tématu Sledování změn EF Core .
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 jejích navigačních vlastností.
Procházení je rekurzivní, takže se budou kontrolovat i 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, že 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 změny se pak ukládají pomocí jiné instance kontextu. Příkladem je webová služba, kde jedno volání služby načítá entity z databáze a druhé volání služby zachovává jakékoli změny entit. Každé volání služby používá novou instanci kontextu, která je uvolněna po dokončení volání.
Procházení grafu by se obvykle mělo zastavit vždy, když se narazí na již sledovanou entitu nebo když dojde k entitě, která by neměla být sledována. 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é volání rozhodnout, kdy procházení skončí, ale onus je pak na volajícím, aby se zajistilo, že procházení nevstoupí 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 objektu stavu.
Parametry
- rootEntity
- Object
Entita, od které se má začít procházení.
- 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 dolů v grafu, pokud zpětné volání vrátí false
.
Platí pro
Entity Framework