c# using语句的使用

c# using语句的使用:

using 语句是一种资源管理机制,自动释放不再需要的资源。它首先创建和初始化资源,然后在作用域内使用资源,最后在离开作用域时自动释放资源。这简化了资源管理,防止了内存泄漏和资源泄漏

C# 中 using 的用法

什么是 using 语句?
using 语句是一种资源管理机制,用于在 C# 程序的特定作用域内创建和使用资源

   using (SqlConnection con = new SqlConnection(strCon))
            {
                DataTable dt = new DataTable();
                SqlDataAdapter da = new SqlDataAdapter("SELECT No AS 员工编号, Name AS 员工姓名," +
                    " Salary AS 基本工资, Evaluation AS 工作评价 FROM tb_Personnel ORDER by No", con);
                da.Fill(dt);
                this.dgvStaffInfo.DataSource = dt.DefaultView;
            }

在这个代码段中使用了using语句,它的作用是当使用SqlConnection类的实例时无论什么原因,离开这个代码段就自动调用SqlConnection类的Dispose。

使用try……catch也能达到同样的目的,但是using更为方便一点。也可以这样理解:using(SqlConnection con = new SqlConnection(strCon))这句代码的意思是控制对于数据库的关闭和释放,如果是其他的内容也是同理。

using()这一句执行完毕后,通过数据适配器SqlDataAdapter da = new SqlDataAdapter(“SELECT No AS 员工编号, Name AS 员工姓名,” +
" Salary AS 基本工资, Evaluation AS 工作评价 FROM tb_Personnel ORDER by No", con)中的con对数据库进行连接上,在接下来的代码段中可直接对数据库中的数据进行相关的操作。在这段代码段中,如果某一句发生异常,using的作用就会使程序的执行直接跳过这段,并且关闭using()括号中的实例。在本代码中,如果using下的代码段产生错误,直接结束整段using下的代码,并且关闭数据库并释放资源。

类似于try……catch,但是更为高级。因为在try……catch中如果产生某句代码产生异常,会在该句产生一个断点,中断于此并抛出异常。

而且如果要释放资源,需要在catch中声明和定义。但是using会自动的释放掉这些占用的资源。

注意:

  • 资源类型必须实现 IDisposable 接口以使用 using 语句。
  • 建议使用 IDisposable 模式来创建自定义资源类型。
  • 可以将多个资源声明放在同一个 using 语句中,用分号分隔。

其它参考:

https://www.php.cn/faq/793042.html

 

 

posted @ 2024-03-06 08:19  txwtech  阅读(69)  评论(0编辑  收藏  举报