如何使存储过程返回一个值?

时间:2014-08-03 10:44:10

标签: c# sql-server stored-procedures

我有一个与此类似的存储过程:

CREATE PROCEDURE [dbo].[sp_mark_question]
AS
BEGIN
   SELECT  1 AS Authenticated,
           0 AS RC
END

执行方式如下:

var rc = await db.Database.SqlQuery<AnswerToClient>(sql).FirstOrDefaultAsync();

public class AnswerToClient
{
    public bool Authenticated { get; set; }
    public bool RC { get; set; }
}

我收到错误:

  

来自物化系统.Int32&#39;的指定演员表。输入&#39; System.Boolean&#39;类型无效。

我认为这可能是因为存储过程返回一个数字。如何让它返回一个可以转换为bool的值?

1 个答案:

答案 0 :(得分:2)

SELECT CAST(1 AS BIT) AS Authenticated