首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DAAB,使用数据库实例的最佳方法是

DAAB,使用数据库实例的最佳方法是
EN

Stack Overflow用户
提问于 2008-12-11 11:21:55
回答 1查看 976关注 0票数 4

伙计们,我将使用企业库(4.1),尤其是DAAB。我有问题要问:

什么是最好的方法?为什么:

代码语言:javascript
复制
- Every time when I need to run a DbCommand I create Database instance using DatabaseFactory.CreateDatabase();
- I have a base class with instanced Database (using the same CreateDatabase() static method) and something like public property which returns the instanced database.

  1. 如何“沉重”或快速/缓慢地创建数据库类的实例?如果每次需要DbCommand时我都会这样做呢?

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-31 14:32:15

这不是问题。创建数据库类具有较低的开销。

但是,实际上创建数据库连接有很高的开销,这就是为什么Windows做连接池的原因。简单地说,当进程第一次创建DB连接时,它会在连接池中查找具有完全相同连接字符串的现有连接。如果找不到,就会创建一个新的(昂贵的操作)。当进程关闭它并让它超出范围时,它实际上并不关闭到DB的连接,而是将它放在connection中。直到同一个进程使用相同的连接字符串创建另一个连接时,才会有保留。然后,它从连接池中提供已经存在的连接池。

您可以关闭连接池(通过连接字符串中的设置),但这通常是一个非常糟糕的主意。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/359028

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档