ChangeTracker.TrackGraph Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Overload
TrackGraph(Object, Action<EntityEntryGraphNode>) |
Mulai melacak entitas dan entitas apa pun yang dapat dijangkau dengan melintasi properti navigasinya.
Traversal rekursif sehingga properti navigasi entitas yang ditemukan juga akan dipindai.
yang ditentukan |
TrackGraph<TState>(Object, TState, Func<EntityEntryGraphNode<TState>,Boolean>) |
Mulai melacak entitas dan entitas apa pun yang dapat dijangkau dengan melintasi properti navigasinya.
Traversal rekursif sehingga properti navigasi entitas yang ditemukan juga akan dipindai.
yang ditentukan |
TrackGraph<TState>(Object, TState, Func<EntityEntryGraphNode,TState,Boolean>) |
Mulai melacak entitas dan entitas apa pun yang dapat dijangkau dengan melintasi properti navigasinya.
Traversal rekursif sehingga properti navigasi entitas yang ditemukan juga akan dipindai.
yang ditentukan Metode ini dirancang untuk digunakan dalam skenario terputus di mana entitas diambil menggunakan satu instans konteks dan kemudian perubahan disimpan menggunakan instans konteks yang berbeda. Contohnya adalah layanan web di mana satu panggilan layanan mengambil entitas dari database dan panggilan layanan lain mempertahankan perubahan apa pun pada entitas. Setiap panggilan layanan menggunakan instans baru konteks yang dibuang saat panggilan selesai. Biasanya traversal grafik harus berhenti setiap kali entitas yang sudah dilacak ditemui atau ketika entitas tercapai yang tidak boleh dilacak. Untuk perilaku umum ini, gunakan TrackGraph(Object, Action<EntityEntryGraphNode>) kelebihan beban. Kelebihan beban ini, di sisi lain, memungkinkan panggilan balik untuk memutuskan kapan traversal akan berakhir, tetapi onus kemudian berada di pemanggil untuk memastikan bahwa traversal tidak akan memasuki perulangan tak terbatas. |
TrackGraph(Object, Action<EntityEntryGraphNode>)
Mulai melacak entitas dan entitas apa pun yang dapat dijangkau dengan melintasi properti navigasinya.
Traversal rekursif sehingga properti navigasi entitas yang ditemukan juga akan dipindai.
yang ditentukan callback
dipanggil untuk setiap entitas yang ditemukan dan harus mengatur State bahwa setiap entitas harus dilacak. Jika tidak ada status yang ditetapkan, entitas tetap tidak terlampir.
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))
Parameter
- rootEntity
- Object
Entitas untuk memulai traversal dari.
- callback
- Action<EntityEntryGraphNode>
Tindakan untuk mengonfigurasi informasi pelacakan perubahan untuk setiap entitas. Agar entitas mulai dilacak, State harus diatur.
Keterangan
Metode ini dirancang untuk digunakan dalam skenario terputus di mana entitas diambil menggunakan satu instans konteks dan kemudian perubahan disimpan menggunakan instans konteks yang berbeda. Contohnya adalah layanan web di mana satu panggilan layanan mengambil entitas dari database dan panggilan layanan lain mempertahankan perubahan apa pun pada entitas. Setiap panggilan layanan menggunakan instans baru konteks yang dibuang saat panggilan selesai.
Jika entitas ditemukan yang sudah dilacak oleh konteks, entitas tersebut tidak diproses (dan properti navigasinya tidak dilalui).
Lihat Pelacakan perubahan EF Core untuk informasi dan contoh selengkapnya.
Berlaku untuk
TrackGraph<TState>(Object, TState, Func<EntityEntryGraphNode<TState>,Boolean>)
Mulai melacak entitas dan entitas apa pun yang dapat dijangkau dengan melintasi properti navigasinya.
Traversal rekursif sehingga properti navigasi entitas yang ditemukan juga akan dipindai.
yang ditentukan callback
dipanggil untuk setiap entitas yang ditemukan dan harus mengatur State bahwa setiap entitas harus dilacak. Jika tidak ada status yang ditetapkan, entitas tetap tidak terlampir.
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))
Jenis parameter
- TState
Jenis objek status.
Parameter
- rootEntity
- Object
Entitas untuk memulai traversal dari.
- state
- TState
Objek status arbitrer diteruskan ke panggilan balik.
- callback
- Func<EntityEntryGraphNode<TState>,Boolean>
Delegasi untuk mengonfigurasi informasi pelacakan perubahan untuk setiap entitas. Parameter kedua untuk panggilan balik adalah objek status arbitrer yang diteruskan di atas. Perulangan grafik tidak akan berlanjut ke bawah grafik jika panggilan balik mengembalikan false
.
Keterangan
Metode ini dirancang untuk digunakan dalam skenario terputus di mana entitas diambil menggunakan satu instans konteks dan kemudian perubahan disimpan menggunakan instans konteks yang berbeda. Contohnya adalah layanan web di mana satu panggilan layanan mengambil entitas dari database dan panggilan layanan lain mempertahankan perubahan apa pun pada entitas. Setiap panggilan layanan menggunakan instans baru konteks yang dibuang saat panggilan selesai.
Biasanya traversal grafik harus berhenti setiap kali entitas yang sudah dilacak ditemui atau ketika entitas tercapai yang tidak boleh dilacak. Untuk perilaku umum ini, gunakan TrackGraph(Object, Action<EntityEntryGraphNode>) kelebihan beban. Kelebihan beban ini, di sisi lain, memungkinkan panggilan balik untuk memutuskan kapan traversal akan berakhir, tetapi onus kemudian berada di pemanggil untuk memastikan bahwa traversal tidak akan memasuki perulangan tak terbatas.
Lihat Pelacakan perubahan EF Core untuk informasi dan contoh selengkapnya.
Berlaku untuk
TrackGraph<TState>(Object, TState, Func<EntityEntryGraphNode,TState,Boolean>)
Mulai melacak entitas dan entitas apa pun yang dapat dijangkau dengan melintasi properti navigasinya.
Traversal rekursif sehingga properti navigasi entitas yang ditemukan juga akan dipindai.
yang ditentukan callback
dipanggil untuk setiap entitas yang ditemukan dan harus mengatur State bahwa setiap entitas harus dilacak. Jika tidak ada status yang ditetapkan, entitas tetap tidak terlampir.
Metode ini dirancang untuk digunakan dalam skenario terputus di mana entitas diambil menggunakan satu instans konteks dan kemudian perubahan disimpan menggunakan instans konteks yang berbeda. Contohnya adalah layanan web di mana satu panggilan layanan mengambil entitas dari database dan panggilan layanan lain mempertahankan perubahan apa pun pada entitas. Setiap panggilan layanan menggunakan instans baru konteks yang dibuang saat panggilan selesai.
Biasanya traversal grafik harus berhenti setiap kali entitas yang sudah dilacak ditemui atau ketika entitas tercapai yang tidak boleh dilacak. Untuk perilaku umum ini, gunakan TrackGraph(Object, Action<EntityEntryGraphNode>) kelebihan beban. Kelebihan beban ini, di sisi lain, memungkinkan panggilan balik untuk memutuskan kapan traversal akan berakhir, tetapi onus kemudian berada di pemanggil untuk memastikan bahwa traversal tidak akan memasuki perulangan tak terbatas.
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))
Jenis parameter
- TState
Jenis objek status.
Parameter
- rootEntity
- Object
Entitas untuk memulai traversal dari.
- state
- TState
Objek status arbitrer diteruskan ke panggilan balik.
- callback
- Func<EntityEntryGraphNode,TState,Boolean>
Delegasi untuk mengonfigurasi informasi pelacakan perubahan untuk setiap entitas. Parameter kedua untuk panggilan balik adalah objek status arbitrer yang diteruskan di atas. Perulangan grafik tidak akan berlanjut ke bawah grafik jika panggilan balik mengembalikan false
.
Berlaku untuk
Entity Framework