日期:2014-05-19  浏览次数:20852 次

关于数据库操作类我该使用抽象工厂还是直接使用静态类,麻烦进来看看
有两个设想

方案一:
    使用抽象工厂来实现数据库操作类
    定义IDB,DB,DBFactory三个项目,外部调用DBFactory实现
    这样可以实现多数据库更换方便,也利于维护和扩展。但是实现起来比较麻烦,而且不能够定义静态类去继承工厂接口

方案二:
    使用静态类
    通过实现DbConnection等抽象类来实现多数据库替换(只需要替换设置数据库类型的字段即可)
   
请问两个方案我该做何选择?各有什么好处?



------解决方案--------------------
1。
方案二括弧内不理解

2。
静态类中使用 ADO.NET 基类会丧失某些数据库提供程序特有的性能支持