实体框架5 - 从存储过程返回(X)

时间:2013-08-27 23:44:20

标签: entity-framework stored-procedures

我的存储过程的最后一行是:

RETURN (22);

我按如下方式调用我的存储过程:

var result = new ObjectParameter("result", typeof(double));
int success = context.MySP(code, Id, result);

从我的代码调用时,存储过程可以正常工作。

code是一个字符串,Id是Guid,resultOUTPUT参数,工作正常。

所以我知道正在达到RETURN (22);语句(在查询分析器中运行也证实了这一点,当我在那里运行时返回值为22)。

我期待(在此示例中),success将包含22,但始终包含-1。

22返回值转换为success变量的最简单方法是什么?

由于 罗布

1 个答案:

答案 0 :(得分:1)

您的存储过程应声明一个输出。假设它是@result,您需要设置并返回它。

CREATE PROCEDURE MySP
    /*
    Input parameters here
    */
    @result INT OUTPUT
AS
BEGIN

    SET @result = 22
    return @result

END

您的回复值应为result

var result = new ObjectParameter("result", typeof(double));
context.MySP(code, Id, result);

int success = result.Value;