我正在写一个数据访问层.我对管理系统中的连接感到困惑.我知道.net使用连接池.但我不想在所有dml操作或所有sql查询中打开和关闭数据库连接.我怎么处理这个?何时何地(可能在使用数据访问层或数据访问层的全局asax中)应该管理连接?
您应该为每个查询打开和关闭sql连接,除非您正在运行一批语句.
"开放较晚,提前关闭"是您应该始终处理数据库连接的方式.
如果您以传统方式(自己进行查询)进行操作,MS已经编写了一个很好的数据访问接口.数据的企业库(应用程序块)拥有所有良好的良好形成的铃声和口哨声.
如果您不想打扰查询,我建议您查看linq2Sql或linq2EF(首选).它们将大大简化您的编码.
为什么不想为每个离散逻辑操作打开/关闭连接?大多数现有的DAL都采用这种方式.通常,尝试超越运行时自动为您做的事情并不是一个好主意,例如智能地管理您的连接.在花费时间和精力为应用程序添加复杂性之前,您应该具有强大的,可证明的技术需求.