我有一个返回一点的SP。
这就是我使用C#
上下文从EF
程序调用的方式:
bool productCount = context.Database
.SqlQuery<bool>("EXEC [dbo].[SP_Name] @CatogeryID,@Id",
new SqlParameter("CatID", lngCatid),
new SqlParameter("SId", lngStudentId)
).FirstOrDefault();
当proc在SQL MMS
内运行时,它会根据参数给出正确/错误的结果。
同一个proc在调用时总是返回false。
我错过了什么?
任何线索?
答案 0 :(得分:1)
也许你的存储过程中没有正确选择?样本工作代码:
CREATE PROCEDURE [dbo].[testProc]
@inval bit output
AS
BEGIN
declare @outval bit
select @outval = @inval
select @outval
END
using (var dbContext = new testContext())
{
var data = dbContext.Database.SqlQuery<bool>("exec testProc {0}",false).FirstOrDefault();
Console.WriteLine(data);
}