Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah saya boleh memanggil prosedur yang disimpan dalam rangka entiti 6 kod-pertama?

Bagaimanakah saya boleh memanggil prosedur yang disimpan dalam rangka entiti 6 kod-pertama?

DDD
DDDasal
2025-01-29 01:56:08812semak imbas

How Can I Call Stored Procedures in Entity Framework 6 Code-First?

Rangka Kerja Entiti 6 Kod-Pertama: Mengintegrasikan Prosedur Disimpan

Meningkatkan Rangka Kerja Entiti Anda 6 Aplikasi pertama kod dengan prosedur yang disimpan untuk interaksi pangkalan data yang dioptimumkan dan enkapsulasi operasi yang kompleks. Panduan ini memperincikan bagaimana untuk mengintegrasikan prosedur tersimpan dengan lancar ke dalam aliran kerja kod pertama anda.

Pemetaan dan Pelaksanaan Prosedur:

  1. Pemetaan: Dalam kaedah DbContext anda, gunakan OnModelCreating untuk menghubungkan entiti dengan prosedur tersimpan yang sepadan. Tentukan nama dan parameter prosedur untuk setiap tindakan (masukkan, kemas kini, padam). MapToStoredProcedures

  2. Pelaksanaan: menggunakan kaedah untuk melaksanakan prosedur yang disimpan. Membekalkan nama prosedur dan parameter input. Jika prosedur mengembalikan data, hantar hasilnya ke jenis entiti anda. Database.SqlQuery

Contoh kod ilustrasi:

mari kita asumsikan entiti

. Kod berikut menunjukkan memasukkan jabatan menggunakan prosedur yang disimpan: Department

<code class="language-csharp">public class DepartmentContext : DbContext
{
    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        base.OnModelCreating(modelBuilder);

        modelBuilder.Entity<Department>()
            .MapToStoredProcedures(s =>
            {
                s.Insert(i => i.HasName("insert_department")
                                .Parameter(b => b.Name, "department_name"));
                // Add mappings for UPDATE and DELETE procedures here
            });
    }

    public void InsertDepartment(string departmentName)
    {
        var result = this.Database.SqlQuery<Department>(
            "EXEC insert_department @department_name",
            new SqlParameter("@department_name", departmentName));
    }
}</code>
kaedah

ini melaksanakan prosedur yang disimpan InsertDepartment, lulus nama jabatan. insert_department

Pertimbangan penting:

  • Set hasil berbilang: Rujuk dokumentasi MSDN untuk mengendalikan prosedur tersimpan yang mengembalikan pelbagai set hasil.
  • Pemadanan Jenis Data: Pastikan sifat entiti anda sejajar dengan jenis dan nama data lajur output yang disimpan.
  • pengendalian ralat: Melaksanakan pengendalian ralat yang mantap untuk menguruskan pengecualian dengan anggun semasa pelaksanaan prosedur.

Atas ialah kandungan terperinci Bagaimanakah saya boleh memanggil prosedur yang disimpan dalam rangka entiti 6 kod-pertama?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn