论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Asp.net教程
Tag:静态页面,treeview,gridview,repeater,dataset,sqldatareader,ado.net,上传,三层,ajax,xml,留言本,新闻发布,商城,注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,触发器,socket,form认证,登录,视频教程

使用Data Access Application Block 得到存储过程的返回值

文章类别:Asp.net | 发表日期:2008-10-5 22:10:18

       今天有位朋友问我如何在Data Access Application Block中得到存储的过程的返回值,我才发现自己以前写的文章中确实没提到这方面的问题,现在来补充一下,具体的解决方法如下:

1、首先建立一个具有返回值的存储过程,作为示例,我就简单的建一个存储过程,如下:
create proc test
(
    @id        int
)
as

declare @flag int

select * from person where id=@id

if @@rowcount > 0
    set @flag=1
else
    set @flag=0

return @flag
我们要在程序中获得这个返回值的方法如下:

        [TestMethod]
        public void TestReturnValue()
        {
            Database db = DatabaseFactory.CreateDatabase();

            DbCommand dbcomm = db.GetStoredProcCommand("test");

            db.AddInParameter(dbcomm, "@id", DbType.Int32,1);
            //关键在这里,添加一个参数,类型为ReturnValue
            db.AddParameter(dbcomm, "@RETURN_VALUE", DbType.String, ParameterDirection.ReturnValue, "", DataRowVersion.Current, null);
            db.ExecuteNonQuery(dbcomm);

            int testvalue = (int)dbcomm.Parameters["@RETURN_VALUE"].Value;

            Assert.AreEqual(testvalue, 1);
        }
通过上面的代码我们就能够在程序中获得存储过程的返回值了。

以前写的文章可能还有很多地方没说到,希望能有更多的朋友提意见,谢谢!

http://pw.cnblogs.com/archive/2006/06/19/429455.html

视频教程列表
文章教程搜索
 
Asp.net推荐教程
Asp.net热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058