Bersemangat Memuatkan Semua Entiti Berkaitan Bersarang dalam Teras Rangka Kerja Entiti 2.0.1
Dalam Teras Rangka Kerja Entiti (Teras EF) versi 2.0.1, tidak mungkin memuatkan semua entiti berkaitan bersarang secara lalai. Walau bagaimanapun, terdapat penyelesaian menggunakan kaedah sambungan tersuai.
Kaedah sambungan IncludePaths menjana semua laluan Sertakan yang diperlukan untuk jenis entiti tertentu. Laluan ini kemudiannya boleh digunakan untuk memuatkan entiti berkaitan bersarang dengan penuh semangat dengan kaedah Sertakan sambungan.
Berikut ialah contoh cara menggunakan kaedah sambungan ini untuk memuatkan semua entiti berkaitan bersarang untuk entiti Pesanan dengan penuh semangat:
public virtual async Task<IEnumerable<Order>> GetAllAsync(Expression<Func<Order, bool>> predicate = null) { var query = Context.Set<Order>() .Include(Context.GetIncludePaths(typeof(Order)); if (predicate != null) query = query.Where(predicate); return await query.ToListAsync(); }
Pendekatan ini membolehkan pemuatan yang bersemangat semua entiti berkaitan bersarang, tanpa mengira kedalaman atau kerumitannya. Ia adalah alat yang berkuasa untuk mengoptimumkan pertanyaan pangkalan data dan meningkatkan prestasi.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memuatkan Semua Entiti Berkaitan Bersarang dalam Teras 2.0.1 Rangka Kerja Entiti?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!