我正在创建一个3层应用程序。基本上,它会正确抽象3层系统中的数据库层?
客户端 - >(通过可选的服务器 是瘦客户机) - >业务逻辑 - > 数据库层
,基本上使得它,以便从未有任何跳跃周围。因此,我希望所有的SQL查询都在数据库层。
那么,现在我有点困惑。我做了几个静态类来启动数据库层,但我应该如何处理数据库连接?我是否应该在任何时候创建一个新的数据库连接,然后进入数据库层,否则会浪费?每当你有一个ConnectionPool时,Connection.Open()是否需要时间?
对我来说,业务层必须将IdbConnection对象传递到数据库层才是错误的。看起来数据库层应该处理所有特定于DB的代码。你怎么看?如何在保持实用性的同时以正确的方式做到这一点?
有没有什么特别的原因让你不使用ORM?我发现它可以节省20-50%的开发时间,而无需手工编写SQL查询,更不用说连接管理,缓存和所有其他方面的好处了。 – 2010-03-30 17:03:46
因为这是一个微不足道的过程,让我们的旧项目与SQL的垃圾负载并把它带到新的项目。 – Earlz 2010-03-30 17:05:30
以下任何答案都可以帮助你解决问题吗? – JonH 2010-03-30 18:07:37