de DbContext.Database.SqlQuery<TElement>(sql, params)
Entity Framework Code First CTP5 permet d'appeler une procédure stockée et de récupérer les résultats sous forme de liste d'objets de type TElement
. Cependant, si la procédure stockée nécessite des paramètres, ceux-ci doivent être spécifiés dans l'appel à SqlQuery
.
Lors de la fourniture d'un objet SqlParameter
en paramètre, le nom du paramètre doit être inclus dans la requête SQL et précédé du symbole @
. Par exemple, pour une procédure stockée qui nécessite trois paramètres, vous spécifierez la requête suivante :
<code class="language-sql">"mySpName @param1, @param2, @param3"</code>
Vous allez ensuite créer trois SqlParameter
objets et les transmettre à SqlQuery
comme ceci :
<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>
Notez que les noms des paramètres dans l'objet SqlParameter
doivent correspondre aux noms des paramètres dans la procédure stockée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!