我有一个存储过程,其作为OUTPUT参数的参数。存储过程设置其值。我在C#应用程序中有以下代码。但我没有在应用程序中获取值(输出返回为零)。这里缺少什么链接?
CREATEPROCEDURE [dbo].aspInsertZipCode
(
@CountOfUnchangedZipCode AS INT=0 OUTPUT
)
AS
BEGIN
SET NOCOUNT ON
SET @CountOfUnchangedZipCode = 13
END
在应用程序中,代码如下
DbCommand cmd = db.GetStoredProcCommand("aspInsertZipCode");
cmd.CommandTimeout = 0;
db.AddOutParameter(cmd, "CountOfUnchangedZipCode", DbType.String, 1000);
执行发生......
int TempUnchageZipCount = Convert.ToInt32(db.GetParameterValue(cmd, "@CountOfUnchangedZipCode"));
答案 0 :(得分:1)
添加到您的SP:
RETURN @CountOfUnchangedZipCode
否则,在代码中执行命令后,您可以使用类似的东西:
var TempUnchageZipCount = (int) cmd.Parameters[0].Value;