Rumah >pembangunan bahagian belakang >C++ >Bagaimana Menggunakan DbContext.Database.SqlQuery dengan Betul dengan Parameter Prosedur Tersimpan dalam Kod EF Pertama?

Bagaimana Menggunakan DbContext.Database.SqlQuery dengan Betul dengan Parameter Prosedur Tersimpan dalam Kod EF Pertama?

Linda Hamilton
Linda Hamiltonasal
2025-01-18 19:11:08869semak imbas

How to Correctly Use DbContext.Database.SqlQuery with Stored Procedure Parameters in EF Code First?

Menggunakan DbContext.Database.SqlQuery<TElement>(sql, params) dengan Prosedur Tersimpan dalam Kod EF Didahulukan

Melaksanakan prosedur tersimpan dengan parameter menggunakan DbContext.Database.SqlQuery<TElement>(sql, params) boleh menimbulkan kesukaran.

Masalah:

Pendekatan ini, apabila digunakan dengan prosedur tersimpan yang memerlukan parameter, selalunya menghasilkan mesej ralat seperti:

<code>"Procedure or function 'mySpName' expects parameter '@param1', which was not supplied."</code>

Penyelesaian:

Penyelesaian melibatkan pembekalan SqlParameter objek dalam struktur yang betul:

<code class="language-csharp">context.Database.SqlQuery<MyEntityType>(
    "mySpName @param1, @param2, @param3",
    new SqlParameter("param1", param1),
    new SqlParameter("param2", param2),
    new SqlParameter("param3", param3)
);</code>

Menyediakan SqlParameter kejadian memastikan prosedur yang disimpan menerima parameter yang diperlukan, yang membawa kepada pelaksanaan yang berjaya dan perolehan semula data.

Atas ialah kandungan terperinci Bagaimana Menggunakan DbContext.Database.SqlQuery dengan Betul dengan Parameter Prosedur Tersimpan dalam Kod EF 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