CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

关于using{SqlCommand cmd=new SqlCommand}的一些问题

楼主coley(唉~眼镜又厚了~)2006-03-16 00:19:01 在 .NET技术 / ASP.NET 提问

以前用的时候一直这样写  
  private   void   Open(baseType   dbtype)  
  {  
  if(cnn==null)  
  {  
  cnn=CreateConnection(this.ConnectionString,dbtype);  
  }  
  if(cnn.State!=ConnectionState.Open)  
  cnn.Open();  
  }  
   
  public   object   ExecuteScalar(string   CommandText)  
  {  
  if(CommandText==null)   throw   new   ArgumentNullException("Command   is   Null!");  
  object   obj;  
  using(cmd=this.CreateCommand(CommandText))  
  {  
  Open(this.BaseType);  
  obj=cmd.ExecuteScalar();  
                              //   Close();本来认为这里如果不用close的话,在调用该方法后这个connection对象也应该关闭才对,结果测试连接然是打开的,也就是说必须手工关闭.难道using的回收机制不起作用了吗?  
  return   obj;  
  }                
  } 问题点数:20、回复次数:4Top

1 楼sp1234(asp.net不是一个语言,是一个操作系统)回复于 2006-03-16 00:59:56 得分 10

凭什么认为它关闭了?找出根据来(给个url)?!Top

2 楼syeerzy(快乐永远*先天下之乐而乐*后天下之忧而忧*)回复于 2006-03-16 01:19:28 得分 10

不是不起用,是你没理解using干什么用的  
  using(A){B}  
   
  其实跟  
  try{  
  B  
  }  
  finally  
  {  
  Dispose掉A中的资源.  
  }  
   
  是一样的,不同写法而已,所以你需要在using后面的括号中写Connection而不是Command,这样就会释放连接了.  
   
  另外,如果2值用DataReader,也可以把Reader放()里面,并在ExecuteReader(#####)里指定#####的枚举值为   CloseConnection   (也许拼写错了,呵呵...)   就可以.  
   
   
  另外如果你的类中还有其他Adapter的话,是会帮你开连接的,这里需要留意Top

3 楼coley(唉~眼镜又厚了~)回复于 2006-03-16 09:06:21 得分 0

如果想到达这样的  
  using   (SqlConnection   conn=new   SqlConnection())  
  {  
    conn.open();  
    cmd.ExecuteNonQuery()   ;//这里的资源的释放应该怎么做?自己手工写还是会自动呢?有办法测试吗?  
  }Top

4 楼coley(唉~眼镜又厚了~)回复于 2006-03-16 10:52:35 得分 0

顶Top

相关问题

  • 问sqlcommand
  • 有关cmd
  • SqlCommand的问题
  • SqlCommand的问题
  • sp_sqlexec @cmd 与 exec(@cmd)的区别
  • odbccommand,sqlcommand等问题
  • 关于cmd命令
  • 如何让CMD下(控制台的程序效率达到windows图形环境下的效率),比如批处理执行的一些程序,和编译
  • CMD中输出HELLO World
  • cmd的奇怪问题

关键词

  • 连接
  • null
  • cnn
  • cmd
  • commandtext
  • 关闭
  • open
  • obj

得分解答快速导航

  • 帖主:coley
  • sp1234
  • syeerzy

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo