| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2445 人关注过本帖
标题:如何调用 public int ExecuteSql(string sql, out string errText) 这样的方 ...
只看楼主 加入收藏
sw4433
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2009-5-24
结帖率:44.44%
收藏
已结贴  问题点数:10 回复次数:8 
如何调用 public int ExecuteSql(string sql, out string errText) 这样的方法?
public int ExecuteSql(string sql, out string errText)
    {
        try
        {
            errText = string.Empty;
            DbCommand cmd = DBcnn.CreateCommand();
             = CommandType.Text;
             = sql;
            return cmd.ExecuteNonQuery();
        }
        catch (System.Exception e)
        {
            errText = e.Message;
            return -1;
        }

    }
下面是调用
public bool selectByEmail(string email)
    {
        int rs;
        string sql = "select count(*) from EcrdAccount where email="+email;
        rs = sqlHelper.ExecuteSql(sql,  ??? );//这里怎么写?
        return rs > 0;
    }
搜索更多相关主题的帖子: string int public ExecuteSql errText 
2010-06-17 14:31
sw4433
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2009-5-24
收藏
得分:0 
out string errText 是什么意思?

为什么要加out ,有什么好处?
2010-06-17 14:32
yms123
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:3 
out代表传出参数,加out是指这个参数是接收函数传出的值,因为函数只能有一个返回值,而要返回多个值的情况下就需要out把多个返回值以参数形式传出去。
2010-06-17 15:35
yms123
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
public bool selectByEmail(string email)
    {
        int rs;
        string sql = "select count(*) from EcrdAccount where email="+email;
        string errmsg="";//这是错误消息字符串用以接收传出的值
        rs = sqlHelper.ExecuteSql(sql,errmsg);//这里怎么写?
        if(errmsg!="")
           response.write "错误信息:"+errmsg
        return rs > 0;
    }
2010-06-17 15:37
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8078
专家分:6657
注 册:2005-11-7
收藏
得分:3 
yms123说的很对,我认为out这个关键词,应该是把方法里的某个值抛出的意思。

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2010-06-17 16:37
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8078
专家分:6657
注 册:2005-11-7
收藏
得分:0 
string errText;
rs = sqlHelper.ExecuteSql(sql, out errText);//这里怎么写?

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2010-06-17 16:38
sw4433
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2009-5-24
收藏
得分:0 
好象是抛出什么错误信息?
就是不太明白,直接根据返回值判断不也可以吗?

这种写发有什么好处?
2010-06-17 17:34
saitor
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:5
帖 子:373
专家分:1520
注 册:2009-5-18
收藏
得分:3 
好处就是在你使用这个方法的各冒泡阶段你都可以得到相同的错误提示。
2010-06-17 20:29
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8078
专家分:6657
注 册:2005-11-7
收藏
得分:0 
以下是引用sw4433在2010-6-17 17:34:21的发言:

好象是抛出什么错误信息?
就是不太明白,直接根据返回值判断不也可以吗?

这种写发有什么好处?
就是说,把方法里的某个值抛出来,而不是return出来,这样的好处是,如果在一个方法里你需要返回多个值的时候,用out的方式就可以做到

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2010-06-18 09:39
快速回复:如何调用 public int ExecuteSql(string sql, out string errText) 这 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021513 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved