ASP.net获取存储过程返回值

今天做新闻系统的分页功能..结果想编写一个存储过程来获取新闻的记录数..返回值怎么也取不出来,经过Google的搜索,好不容易整下来了,哇咔咔!记下来先!
存储过程在这里:
ExpandedBlockStart.gif
 1  -- 用ParameterDirection.ReturnValue; 返回值
 2  --  =============================================
 3  --  Author:        杨峰    
 4  --  Create date: 2009-08-22    16:18
 5  --  Description:    计算表的记录数
 6  --  =============================================
 7  ALTER   PROCEDURE   [ dbo ] . [ CountNumber ]
 8 
 9  AS
10  declare   @num   int
11 
12  select    @num = count ( * from  news
13 
14  return   @num
15 
16  GO
17 
18 
19  -- 用ParameterDirection.Output; 参数返回值
20  ALTER   PROCEDURE   [ dbo ] . [ CountNumber ]
21  @num   int  output
22  AS
23  select   @num = count ( * from  news
24  return   @num
25  GO
代码在这里!
 1  #region  计算出数据表的记录数
 2 
 3  ///   <summary>
 4 ///  计算出数据表的记录数
 5 ///   </summary>
 6 ///   <returns> 记录数 </returns>
 7 public   string  CountNumber()
 8 {
 9        
10   cmd  =   new  SqlCommand( " CountNumber " , GetConn());
11    cmd.CommandType  =  CommandType.StoredProcedure;
12    SqlParameter i =   new  SqlParameter( " @num " , SqlDbType.Int);
13   // i.Direction = ParameterDirection.Output;
14     i.Direction  =  ParameterDirection.ReturnValue;
15     cmd.Parameters.Add(i);
16     cmd.ExecuteNonQuery();
17 
18    // int strReturn = i.Value.ToString();  // 返回值--方法1
19     string  num  =  cmd.Parameters[ " @num " ].Value.ToString();
20      // 返回值--方法2
21 
22     conn.Close();
23 
24     return  num;
25 
26          }
27 
28           #endregion


呵呵,好简单..就是我不会,看来我还要更努力才行,加油!
今天看李天平老师的 .NET深入体验与实战精要 这本书的样章,才发现原来有更简单的方法..晕死哦
记下来,又学到好东西了~
下边的是老师书上的内容:
在 DataTable中也是可以进行数据统计的。
下面就通过几个简单的示例, 介绍一下如何无须通过逐条记录进行计算就可以轻松地获
得 DataTable中的记录统计结果。这里调用的是功能强大的 DataTable 的函数 Compute。
(1)函数说明:
public object Compute(string strExpression,string strFilter);
z  strExpression:要计算的表达式字符串,基本上类似于 Sql Server中的统计表达式。  
z  strFilter:统计的过滤字符串,只有满足这个过滤条件的记录才会被统计。
:
很好用的,改过之后就这一句话就行了,真方便啊,以后还要继续努力,哈哈!
              int count =(int) dt.Compute("count(id)", "true");//获取新闻总数
              anp.RecordCount = count;

转载于:https://www.cnblogs.com/yangfeng/archive/2009/08/22/1552157.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值