public static ConnectionProvider RegisterDefaultProvider(string connectionString, string sysDatabase) { SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder(connectionString); Const.CONNECTION_STRING = connectionString; Const.DB_APPLICATION = builder.InitialCatalog; if (sysDatabase == null) { Const.DB_SYSTEM = builder.InitialCatalog; } else { Const.DB_SYSTEM = sysDatabase; } defaultProvider = new SqlDbConnectionProvider("Default", connectionString); Instance.Add(ConnectionProviderManager.DefaultProvider); return(ConnectionProviderManager.DefaultProvider); }
public static ConnectionProvider Register(string serverName, string connectionString) { DbConnectionStringBuilder conn = new DbConnectionStringBuilder(); conn.ConnectionString = connectionString.ToLower(); string providerName = "sqldb"; object value; if (conn.TryGetValue("provider", out value)) { if (value is string) providerName = (string)value; } ConnectionProvider pvd = null; switch (providerName) { case "xmlfile": pvd = new XmlDbConnectionProvider(serverName, connectionString); break; case "riadb": //Remote Invoke Agent pvd = new RiaDbConnectionProvider(serverName, connectionString); break; case "Microsoft.ACE.OLEDB.12.0": //Excel 2010 case "Microsoft.Jet.OLEDB.4.0": //Excel 2007 or Access case "MySqlProv": //MySql case "MSDAORA": //Oracle case "sqloledb": pvd = new OleDbConnectionProvider(serverName, connectionString); break; case "sqldb": //Sql Server pvd = new SqlDbConnectionProvider(serverName, connectionString); break; } if (pvd != null) Register(pvd); else throw new Exception($"invlaid connection string {connectionString}"); return pvd; }