Sql存储过程:
Enterprise Library 2.0系列:如何获取存储过程的output参数值?    ALTER PROCEDURE dbo.GetSum 
Enterprise Library 2.0系列:如何获取存储过程的output参数值?    (
Enterprise Library 2.0系列:如何获取存储过程的output参数值?        
@IX int,
Enterprise Library 2.0系列:如何获取存储过程的output参数值?        
@IY int,
Enterprise Library 2.0系列:如何获取存储过程的output参数值?        
@ISum int output
Enterprise Library 2.0系列:如何获取存储过程的output参数值?    )
Enterprise Library 2.0系列:如何获取存储过程的output参数值?    
AS
Enterprise Library 2.0系列:如何获取存储过程的output参数值?        
Set @ISum = @IX + @IY;
Enterprise Library 2.0系列:如何获取存储过程的output参数值?        
Enterprise Library 2.0系列:如何获取存储过程的output参数值?        
RETURN

C#代码:
Enterprise Library 2.0系列:如何获取存储过程的output参数值?    // 创建 Database、DbCommand 对象
Enterprise Library 2.0系列:如何获取存储过程的output参数值?
    Database db = DatabaseFactory.CreateDatabase();
Enterprise Library 2.0系列:如何获取存储过程的output参数值?    DbCommand cmd 
= db.GetStoredProcCommand("GetSum");
Enterprise Library 2.0系列:如何获取存储过程的output参数值?
Enterprise Library 2.0系列:如何获取存储过程的output参数值?    
// 添加参数
Enterprise Library 2.0系列:如何获取存储过程的output参数值?
    db.AddInParameter(cmd, "IX", DbType.Int32, 100);
Enterprise Library 2.0系列:如何获取存储过程的output参数值?    db.AddInParameter(cmd, 
"IY", DbType.Int32, 280);
Enterprise Library 2.0系列:如何获取存储过程的output参数值?    db.AddOutParameter(cmd, 
"ISum", DbType.Int32, 4); // 添加输出参数的时候,名称前不用加“@”
Enterprise Library 2.0系列:如何获取存储过程的output参数值?
Enterprise Library 2.0系列:如何获取存储过程的output参数值?    
// 执行,并获取输出参数值
Enterprise Library 2.0系列:如何获取存储过程的output参数值?
    db.ExecuteNonQuery(cmd);
Enterprise Library 2.0系列:如何获取存储过程的output参数值?    
int iX = Convert.ToInt32(cmd.Parameters["@IX"].Value); // 获取参数值的时候,需要加上“@”前缀
Enterprise Library 2.0系列:如何获取存储过程的output参数值?
    int iY = Convert.ToInt32(cmd.Parameters["@IY"].Value);
Enterprise Library 2.0系列:如何获取存储过程的output参数值?    
int iSum = Convert.ToInt32(cmd.Parameters["@ISum"].Value);
Enterprise Library 2.0系列:如何获取存储过程的output参数值?
Enterprise Library 2.0系列:如何获取存储过程的output参数值?    
// 输出到客户端
Enterprise Library 2.0系列:如何获取存储过程的output参数值?
    string strText = string.Format("{0} + {1} = {2}", iX, iY, iSum);
Enterprise Library 2.0系列:如何获取存储过程的output参数值?    Response.Write(strText); 
// 显示结果:100 + 280 = 380
Enterprise Library 2.0系列:如何获取存储过程的output参数值?
    Response.End();Enterprise Library 2.0系列:如何获取存储过程的output参数值?

  这段时间一直在学习 Enterprise Library 中的“Data Access Application Block”,常用的功能基本上都学会了。下一步,准备学习其他几个“Application Block”!鼓励一下自己:再接再厉!Enterprise Library 2.0系列:如何获取存储过程的output参数值?

相关文章:

  • 2022-12-23
  • 2022-03-01
  • 2021-09-16
  • 2022-01-01
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-06-03
  • 2021-07-21
  • 2021-12-23
相关资源
相似解决方案