Gambaran Keseluruhan
Rangka Kerja Entiti Evolusi Core telah mengubah bagaimana pertanyaan SQL mentah dengan pemetaan hasil tersuai dikendalikan. Artikel ini menangani cabaran mendapatkan data, terutamanya apabila menggabungkan data jadual dengan hasil dari pertanyaan carian teks penuh, yang memberi tumpuan kepada penyelesaian untuk pelbagai versi teras EF.ef teras 8 dan kemudian
EF Core 8 dan versi seterusnya memudahkan proses ini. Kaedah
kini secara langsung menyokong kembali jenis sewenang -wenangnya. Ini membolehkan penggunaan jenis entiti tanpa kunci dan kelas tersuai untuk memetakan hasil pertanyaan.
SqlQuery
Untuk EF Core 3.0, jenis entiti tanpa kunci menyediakan penyelesaian yang bersih. Tentukan kelas tanpa kunci utama menggunakan atribut
atau dengan memanggil. [Keyless]
HasNoKey()
<code class="language-csharp">[Keyless] public class SomeModel { ... } protected override void OnModelCreating(ModelBuilder modelBuilder) { modelBuilder.Entity<SomeModel>().HasNoKey(); }</code>
: FromSqlRaw
FromSql
<code class="language-csharp">var result = context.SomeModels.FromSqlRaw("YOUR SQL SCRIPT").ToList();</code>
EF CORE 2.1 Memperkenalkan jenis pertanyaan, menawarkan pendekatan berstruktur untuk memetakan kelas tersuai. Tambahkan harta
ke anda dan gunakan DbQuery<T>
: DbContext
FromSql
<code class="language-csharp">public DbQuery<SomeModel> SomeModels { get; set; } var result = context.SomeModels.FromSql("YOUR SQL SCRIPT").ToList();</code>
Kaedah ini secara berkesan menangani keperluan pemetaan hasil tersuai apabila melaksanakan pertanyaan SQL mentah dalam teras kerangka entiti, yang membolehkan pengambilan data yang fleksibel, termasuk senario yang melibatkan hasil carian teks penuh dan set data gabungan. Pilih pendekatan yang paling sesuai dengan versi teras EF anda. Ingatlah untuk menggantikan
dengan pertanyaan SQL sebenar anda.Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Pertanyaan SQL Mentah dengan Pemetaan Hasil Tersuai dalam Teras Rangka Kerja Entiti?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!