Zai*_*zvi 4 c# sql-server stored-procedures entity-framework azure-sql-database
我的代码看起来像这样:
int retval = databaseContext.Database.ExecuteSqlCommand(command, sqlParameters.ToArray());
Run Code Online (Sandbox Code Playgroud)
其中databaseContext的类型为System.Data.Entity.DbContext
我想使用返回值来了解存储过程是否成功运行.基于文档 ExecuteSqlCommand应该返回存储过程的结果.
但是,无论我将存储过程设置为什么,该命令始终返回-1到retval.我已经尝试返回各种整数,甚至在存储过程中调用RAISERROR,但返回值始终为-1.
这是我尝试过的两个存储过程,但它们都返回-1并且没有给出任何成功运行的指示:
CREATE PROCEDURE [dbo].[myproc]
AS
BEGIN
RAISERROR ('You fail', -- Message text.
0, -- Severity - operation failed.
500-- State.
);
END
GO
CREATE PROCEDURE [dbo].[myproc]
AS
BEGIN
RETURN 1
END
GO
Run Code Online (Sandbox Code Playgroud)
知道我在这里做错了吗?