存储过程返回1个输出参数问题,这两种方法有区别吗,为什么第一种不行呢

luwei886542 2008-11-25 02:48:04
该方法返回存储过程的个输出参数:
SqlParameter[] paramter = new SqlParameter[]
{
new SqlParameter("@id",SqlDbType.VarChar),
new SqlParameter("@i",SqlDbType.Int)
};
paramter[0].Value = id;
paramter[1].Direction = ParameterDirection.Output;

SqlHelper.ExecuteNonQuery((DBConfig.getConfig(), "dbo_turnprivate", paramter);
string inResult = paramter[1].Value.ToString();
return inResult;
这样写会出错,因为paramter[1].Value为空,不能ToString.这里 using Microsoft.ApplicationBlocks.Data;
好象是微软封装好的方法,一个DLL文件.

如果这么写就可以:
SqlConnection conn = new SqlConnection(DBConfig.getConfig());
conn.Open();
SqlCommand cmd = new SqlCommand("turnprivate", conn);

cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@id", SqlDbType.VarChar);
cmd.Parameters["@id"].Value = id;
cmd.Parameters.Add("@i", SqlDbType.Int);
cmd.Parameters["@i"].Direction = ParameterDirection.Output;

cmd.ExecuteReader();

// 获取执行存储过程后的输出参数
string inResult = cmd.Parameters["@i"].Value.ToString();
return inResult;
不可能是封装好的方法不能解决这个问题呀,肯定是我代码哪不对,望高手帮帮忙,谢谢了!
...全文
95 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
luwei886542 2008-11-25
  • 打赏
  • 举报
回复
这不是像查询出来有个返回值那样,我用的第二种方法好象是执行完后给paramter[1].Value赋值似的,然后返回它
BernardSun 2008-11-25
  • 打赏
  • 举报
回复
找个有返回值的方法Reader,Dataset都行,具体叫什么没用过,你找一下
luwei886542 2008-11-25
  • 打赏
  • 举报
回复
就执行一下存储过程,不用这个方法,用哪个呢
我要的只是存储过程输出的个参数
Wayne 2008-11-25
  • 打赏
  • 举报
回复
顶一下。
BernardSun 2008-11-25
  • 打赏
  • 举报
回复
ExecuteNonQuery是没有返回值的方法
luwei886542 2008-11-25
  • 打赏
  • 举报
回复
那用哪个方法呢
Teng_s2000 2008-11-25
  • 打赏
  • 举报
回复
ExecuteNonQuery方法换了
打开链接下载源码: https://pan.quark.cn/s/79f1162eeef8 互联网上用于构建卡盟平台的核心代码即为卡盟系统源码,此类系统主要应用于虚拟商品的交换领域,例如游戏点卡、手机充值卡等。 "有米卡盟源码"或许是指某个特定的品牌或开发者,其源码由专业人士精心打造,提供合法授权,从而保障了系统的稳定运作与安全性。 在相关描述中提及的“绝对有米卡盟源码”,突出了该源码的真实无虚与可信度。 源码的合法性对于构建者和管理者而言具有核心意义,这不仅是确保系统正常运作的关键,亦关系到后续的升级维护及法律层面的风险。 采用合法的源码能够规避盗版可能引发的各类问题,例如功能不全、安全漏洞以及法律争议。 压缩包中的文件命名展示了系统的基本组成:1. `grement.php`:或许为协议或版权相关的文件,通常涵盖软件的使用许可条款。 2. `index.php`:作为网站的启动文件,负责处理请求并展示首页内容。 3. `robots.txt`:这是一个标准的网络文件,用于向搜索引擎指示哪些页面可以进行抓取,哪些页面应被忽略。 4. `libraries`:此目录包含各类类库,这些类库为系统提供了所需的功能单元,例如数据库管理、用户验证等。 5. `admin`:可能是一个用于系统管理员的操作后台目录,用于执行日常管理和设定。 6. `content`:可能存放网站的内容资料,如文章、产品信息等。 7. `modules`:模块化的目录,可能集成不同功能的插件或模块,有助于系统的功能拓展。 8. `index`:可能包含其他页面的指引或配置文档。 9. `img`:通常用于存储网站的视觉素材。 10. `helper`:辅助函数库,集成各类通用函数,便于代码的重复利用。 通过这些文件,我们可以推...

62,269

社区成员

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

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

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

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