我有一个返回输出的存储过程。存储过程中的输出参数定义如下:
@Success int output
我正在使用以下语句从输出参数中检索值。我收到错误消息
“指定的演员表无效”
我正在使用 Visual Studio 2012。
int returnVal = (int)myCOmmand.Parameters["@Success"].Value;
你能告诉我可能是什么问题吗?并提供解决方案。
感谢您的帮助。夜叉
我有一个返回输出的存储过程。存储过程中的输出参数定义如下:
@Success int output
我正在使用以下语句从输出参数中检索值。我收到错误消息
“指定的演员表无效”
我正在使用 Visual Studio 2012。
int returnVal = (int)myCOmmand.Parameters["@Success"].Value;
你能告诉我可能是什么问题吗?并提供解决方案。
感谢您的帮助。夜叉
我创建了一个参数来获取执行后的值,如下所示(o_id 是参数名称):
IDbDataParameter o_id = cmd.CreateParameter();
o_id.ParameterName = "?o_id";
o_id.DbType = DbType.Int32;
o_id.Direction = ParameterDirection.Output;
cmd.Parameters.Add(o_id);
// Call the Stored Procedure
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText "= MyStoredProcedure";
db.ExecuteNonQuery(cmd);
int o_idValue = int.Parse(o_id.Value.ToString());
在这种情况下,db
是一个数据库层,它执行我的 IDbCommand
int.Parse()
可能您可以使用(甚至更好,int.TryParse()
)解决您的问题