Data Access Application Block

博客介绍了Application Block对数据库程序的作用,它可减少数据库相关代码,但仅提供SQL Server版本Helper,需自行修改以支持Oracle、OleDb与Odbc。还探讨了跨数据库实现问题,虽难以100%跨数据库,但可通过好的设计,如组合工厂方法模式等实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个Application Block对于用到数据库的程序来说是必备的,用它可以减少很多的与数据库相关的代码。不过美中不足是只提供了SQL Server版本的Helper,所以还是得我们自己来改一下,让它也可以平行的提供Oracle、OleDb与Odbc的Helper,这四种因为这些是.NET Framework中提供的Data Providers,如果有你也有其他的Data Provider的话那么也可以扩进来哦。

很简单,将SqlHelper现有的代码Copy下来,然后再用Oracle、OleDb、Odbc等字样替换掉就有了相应的版本了,不过注意除了SQL Server其他的Data Provider都不支持ExecuteXmlReader等方法,所以简单的将它们去掉就可以了。现在的问题是,如何实现跨数据库呢?

其实这是个老问题,看起来好像不能做到100%跨数据库,除非你的程序非常的简单。所以不如为多个数据库写多个版本,但要做到不需要改动调用就可以增加多个版本,这样才可以在以后添加对新的数据库的支持,看起来好像不可能,实际上通过好的设计是可以实现的,具体的就不说了,因为要因项目而异。作为一个提示,你可以考虑利用工厂方法模式与其他的模式的组合来达到这个目的。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值