在 EF Code First 中將 DbContext.Database.SqlQuery<TElement>(sql, params)
與預存程序結合使用
使用 DbContext.Database.SqlQuery<TElement>(sql, params)
執行帶參數的預存程序可能會遇到困難。
問題:
這種方法與需要參數的預存程序一起使用時,通常會導致錯誤訊息,例如:
<code>"Procedure or function 'mySpName' expects parameter '@param1', which was not supplied."</code>
解:
解決方案涉及以正確的結構提供SqlParameter
物件:
<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>
提供 SqlParameter
實例可確保預存程序接收必要的參數,從而成功執行和資料檢索。
以上是如何在 EF Code First 中正確使用帶有預存程序參數的 DbContext.Database.SqlQuery?的詳細內容。更多資訊請關注PHP中文網其他相關文章!