ASP.NET中的数据访问层,建立连接的最佳实践

本文关键字:连接 建立 最佳 NET 数据 访问 ASP | 更新日期: 2023-09-27 18:29:25

在创建ASP.NET/Web Services中使用的数据访问层时,这被认为是一种更好的做法:

1) 在从数据库检索数据的每个方法中打开和关闭连接;

2) 通过在构造函数中打开连接,然后在析构函数中关闭连接,创建一个处理与数据库连接的"连接类",以及使用该连接类的其他独立类。

(我尝试输入伪代码作为示例,但stackexchange不接受。很抱歉没有示例。)

我担心第一种方法会随着时间的推移打开一百万个不必要的数据库连接。或者ASP.NET只是缓存连接,而我不必担心它?

使用第二种方法是否有缺点或危险,我想这会延长与数据库的连接时间?

提前谢谢。

ASP.NET中的数据访问层,建立连接的最佳实践

拥有全局连接类的问题是多个web处理程序会同时调用它。有时,您可以将数据库对象的生存期和可见性限定在该连接的范围内。(例如,临时表)。如果在同一连接上同时运行多个查询,那么这些查询可能会无意中相互干扰。

您想要的是连接池。在这里,有许多连接保持打开,但当一个函数访问一个连接时,它会独占使用它

如果您使用的是SQL Server,那么这是免费提供的:

SQL Server连接池(ADO.NET)