不被重视的基础,简单高效地使用ADO.net连接对象

来源:未知 责任编辑:智问网络 发表时间:2013-11-10 20:22 点击:

很多初学者朋友在做项目时遇到过这样的问题,那就是在本地调试运行的程序正常,放到服务器上也是正常的,但是如果有了一些并发之后,就会发现页面会出现打不开的现像,其实大多数时候是因为Ado.net链接没有处理完善。当然对于老鸟来说这种情况是不会发生的。

其实避免出现这种情况和提高Connection对象的使用性能的方式很简单,我们这里列出两种方式供初学者或遇到过这种问题的朋友选择:

1.使用try-catch-finally语句块:

        SqlConnection conn = new SqlConnection("链接字符串");        try        {            conn.Open();//打开数据库链接            //添写针对链接对象所做的一些操作        }        catch (SqlException err)        {            //这里可以将错误信息写入日志        }        finally        {            conn.Close();//在完成conn对象的操作后需要关闭链接        }复制代码
    这么做的原因是,虽然.NET框架中有垃圾回收机制,但是我们为了能确保资源的有效利用,所以需要尽早的释放到资源,以保证其能被有效的利用起来。同时,我们也不建议大家直接在操作完成后使用conn.Close()方法,因为这样的话,如果在本次操作出现错误后,conn将不再继续往下执行,那么意味着链接就不会关闭,其结果是你第二次操作时,将来提示链接没有被关闭。

2.也可使用using语句块:

        using (SqlConnection conn = new SqlConnection("链接字符串"))        {            conn.Open();            //添写针对链接对象所做的一些操作        }复制代码
    有兴趣的朋友,可以去研究一下using关健字在C#中的各种用法,那么在这里using所起到的作用是不论如何退出语句块,都会释放到conn对象的资源。

    当然,我的建议是大家可以结合起来使用,因为using对象可以确保资源的释放,而try语句块可以让我们抓取异常,并且写到Log中。

 摘自 张剑的专栏

    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    用户名: 验证码:点击我更换图片
    最新评论 更多>>

    推荐热点

    • 浅析.NET下XML数据访问新机制
    • asp.net 面试+笔试题目第1/2页
    • C# 邮件地址是否合法的验证
    • C#高级编程:数据库连接[1]
    • asp.net 设置GridView的选中行的实现代码
    • 经典C++程序1
    • IIS 自动回收导致后台定时器失效的问题解决
    • ASP.NET GridView列表代码示例
    • 微软ASP.NET站点部署指南(3):使用Web.Config文件的Transforma
    网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
    Copyright © 2008-2015 计算机技术学习交流网. 版权所有

    豫ICP备11007008号-1