不明白command.Parameters["ReturnValue"].Value这句代码

zhengyingcan 2011-10-13 07:34:55
/// 执行存储过程,返回执行结果和影响行数
/// </summary>
/// <param name="storedProcName">存储过程名</param>
/// <param name="parameters">存储过程参数</param>
/// <param name="rowsAffected">影响的行数</param>
/// <returns></returns>
public static int RunProcedure(string storedProcName, IDataParameter[] parameters, out int rowsAffected)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
int result;
connection.Open();
SqlCommand command = BuildIntCommand(connection, storedProcName, parameters);
rowsAffected = command.ExecuteNonQuery();
result = (int)command.Parameters["ReturnValue"].Value;
connection.Close();
return result;
}
}

以上代码,我就是不明白 result = (int)command.Parameters["ReturnValue"].Value;
ReturnValue我感觉莫名其妙,突出其来,高人帮忙指点一下,谢谢.
...全文
210 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ChinaXtHuLang 2011-10-14
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 koumingjie 的回复:]
result = (int)command.Parameters["ReturnValue"].Value;

将存储过程的返回值赋值给result
[/Quote]
+1
shelless 2011-10-13
  • 打赏
  • 举报
回复
去看看带参存储过程调用,input output一个或多个情况。
waiting_9752994 2011-10-13
  • 打赏
  • 举报
回复
再说明白点吧,rowsAffected 是返回影响行数的,而result就是执行存储过程,返回的执行结果,
你可以去数据库执行存储过程后看看,一般为0或者1;
waiting_9752994 2011-10-13
  • 打赏
  • 举报
回复
ReturnValue就是指执行存储过程后翻回的参数,然后再转换赋值给result.你可以在数据库里执行存储过程看看就知道了~
hao1hao2hao3 2011-10-13
  • 打赏
  • 举报
回复
ReturnValue是存储过程中的参数,应该指定了为输出参数(Output)了,通过上面的方法可以得到执行存储过程后的该值。
koumingjie 2011-10-13
  • 打赏
  • 举报
回复
result = (int)command.Parameters["ReturnValue"].Value;

将存储过程的返回值赋值给result
dalmeeme 2011-10-13
  • 打赏
  • 举报
回复
ReturnValue是参数名,将参数ReturnValue的值转换为int。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧