예제 #1
0
        private List <ConnectionProvider> GetConnectionProviders()
        {
            List <ConnectionProvider> pvds = new List <ConnectionProvider>();

            if (machines.Undefined)
            {
                return(pvds);
            }

            foreach (var pair in machines)
            {
                if (pair[0].IsNull || pair[1].IsNull)
                {
                    string text = pair[0].ToSimpleString();
                    cerr.WriteLine($"warning: undefined connection string at servers.{text}");
                    continue;
                }

                string serverName       = pair[0].Str;
                string connectionString = PeelOleDb(pair[1].Str);
                try
                {
                    ConnectionProvider provider = ConnectionProviderManager.Register(serverName, connectionString);
                    pvds.Add(provider);
                }
                catch (Exception ex)
                {
                    cerr.WriteLine(ex.Message);
                }
            }

            return(pvds);
        }
예제 #2
0
        public UnitTestDataContext()
        {
            if (Environment.MachineName.StartsWith("XPS"))
            {
                connectionString = "data source=localhost\\sqlexpress;initial catalog=Northwind;integrated security=SSPI;packet size=4096";
            }
            else
            {
                connectionString = "Server = (LocalDB)\\MSSQLLocalDB;initial catalog=Northwind;Integrated Security = true;";
            }

            ConnectionProviderManager.RegisterDefaultProvider(connectionString);
        }
예제 #3
0
        private ConnectionProvider GetProvider(string serverName, string databaseName)
        {
            var provider = Providers.Find(x => x.Name == serverName);

            if (provider != null)
            {
                if (databaseName == "~")
                {
                    databaseName = provider.DefaultDatabaseName.Name;
                }

                return(ConnectionProviderManager.CloneConnectionProvider(provider, serverName, databaseName));
            }
            else
            {
                cerr.WriteLine($"invalid server path: \\{serverName}\\{databaseName}");
                return(null);
            }
        }