我做了一个工厂模式,返回一个对象来操作任何类型的数据库(到目前为止,我只有OleDB,ODBC和sql)。我在这里发布了我的实现:任何与Factory Pattern的数据库连接,需要澄清和审查我的方法但我想知道是否有任何方法来获得每种连接类型的默认驱动程序。例如,我目前正在做类似的事情:
factory = new FactoryDB();
connection = factory.CreateDBConnection(FactoryDbType.Odbc);
connection.Driver = "{InterSystems ODBC}";
connection.ServerIP = secretObject.IP;
connection.Port = secretObject.Port.ToString();
connection.DataBase = secretObject.DBName;
connection.UID = secretObject.UserName;
connection.Password = "password";
然后我在我的工厂内部有一个方法,它根据这些信息创建连接字符串。我也可以直接设置连接字符串,而不必设置所有这些属性:connection.ConnectionString = "Driver={InterSystems ODBC};Server=someIP;DataBase=SomeDB;UID=somUID;PWD=somePassword;PORT=somePort"
;
所有参数都必须由开发人员(或者用户以这种方式定向)明确写出。
我想知道我是否可以绕过指定驱动程序的需要并选择安装在机器上的默认Odbc / OleDB / Sql / ...驱动程序,还是我们每次必须指定的东西?