C#中using语句是什么意思
使用using语句最终生成的其实是一个try, finally代码块,在finally代码块里释放资源。要求是:为 using 语句提供的对象必须实现 IDisposable 接口。此接口提供了 Dispose 方法,该方法将释放此对象的资源。
你的问题其实可以这样解释:
在using中其实打开了一个数据库连接,然后从数据库中读取了某些数据,最后不管读取是否成功,都应该把这个数据库连接关闭掉。
传统的写法应该是在try块里打开连接并且读取,在finally块中把连接关闭掉,而由于你的sdr对象实现了IDisposable接口,所以C#允许你用using语句来代替这种写法,其实这就是一种语法糖,一种简便写法而已。
当程序运行完这个代码块(超出大括号的范围)后,sdr就会被自动关闭掉。
此博客只是为了记忆相关知识点,大部分为网络上的文章,在此向各个文章的作者表示感谢!