我在C#中遇到SQL Server问题,并执行以下步骤:
CREATE PROCEDURE [dbo].[TestingReturn]
AS
BEGIN
SET NOCOUNT ON
SELECT -2 AS Id
RETURN -1
END
如何获取返回值? C#生成的代码只允许访问select:
返回的值model.TestingReturn_Result foo = model.TestingReturn();
if (foo != null)
{
int bar = Convert.ToInt32(foo.FirstOrDefault().Id); // -2
}
谢谢,最好的问候,
答案 0 :(得分:0)
澄清:此答案适用于linq-to-sql(原始问题标签);我不知道entity-framework是否直接支持这种情况。
在linq-to-sql中,如果要同时访问select
和return
值,则需要删除ADO.NET并添加方向为ParameterDirection.ReturnValue
的参数,并以数据读取器(ExecuteReader
)执行该命令。然后在使用来自数据阅读器的所有数据后,您可以访问您添加的参数的.Value
。