关于数据库操作类我该使用抽象工厂还是直接使用静态类,麻烦进来看看
有两个设想
方案一:
使用抽象工厂来实现数据库操作类
定义IDB,DB,DBFactory三个项目,外部调用DBFactory实现
这样可以实现多数据库更换方便,也利于维护和扩展。但是实现起来比较麻烦,而且不能够定义静态类去继承工厂接口
方案二:
使用静态类
通过实现DbConnection等抽象类来实现多数据库替换(只需要替换设置数据库类型的字段即可)
请问两个方案我该做何选择?各有什么好处?
------解决方案--------------------1。
方案二括弧内不理解
2。
静态类中使用 ADO.NET 基类会丧失某些数据库提供程序特有的性能支持