小编典典

如何使用 DbContext.Database.SqlQuery(sql,params)与存储过程?EF 代码优先 CTP5

all

我有一个具有三个参数的存储过程,我一直在尝试使用以下方法返回结果:

context.Database.SqlQuery<myEntityType>("mySpName", param1, param2, param3);

起初我尝试使用SqlParameter对象作为参数,但这不起作用并抛出了SqlException以下消息:

过程或函数“mySpName”需要未提供的参数“@param1”。

所以我的问题是如何将此方法与需要参数的存储过程一起使用?

谢谢。


阅读 91

收藏
2022-05-12

共1个答案

小编典典

您应该通过以下方式提供 SqlParameter 实例:

context.Database.SqlQuery<myEntityType>(
    "mySpName @param1, @param2, @param3",
    new SqlParameter("param1", param1),
    new SqlParameter("param2", param2),
    new SqlParameter("param3", param3)
);
2022-05-12