Esempio n. 1
0
        public IScriptReponse Execute(AbstractConnection connection, string script, int timeOut = 0)
        {
            var response = new ScriptResponse();
            var server   = new Server();
            var logger   = connection.Logger;

            try {
                logger.Debug("Connecting to {0} on {1}.", connection.Database, connection.Server);
                server.Connect(connection.GetConnectionString());

                var results = server.Execute(script);

                foreach (XmlaResult result in results)
                {
                    foreach (XmlaMessage message in result.Messages)
                    {
                        response.Messages.Add(message.Description);
                    }
                }
                response.Success = response.Messages.Count == 0;
            } catch (Exception e) {
                logger.Debug(e.Message + (e.InnerException != null ? " " + e.InnerException.Message : string.Empty));
                response.Messages.Add(e.Message);
            } finally {
                if (server.Connected)
                {
                    logger.Debug("Disconnecting from {0} on {1}.", connection.Database, connection.Server);
                    server.Disconnect();
                }
            }
            return(response);
        }
        public IScriptReponse Execute(AbstractConnection connection, string script, int timeOut = 0) {
            var response = new ScriptResponse();
            var server = new Server();
            var logger = connection.Logger;

            try {
                logger.Debug("Connecting to {0} on {1}.", connection.Database, connection.Server);
                server.Connect(connection.GetConnectionString());

                var results = server.Execute(script);

                foreach (XmlaResult result in results) {
                    foreach (XmlaMessage message in result.Messages) {
                        response.Messages.Add(message.Description);
                    }
                }
                response.Success = response.Messages.Count == 0;
            } catch (Exception e) {
                logger.Debug(e.Message + (e.InnerException != null ? " " + e.InnerException.Message : string.Empty));
                response.Messages.Add(e.Message);
            } finally {
                if (server.Connected) {
                    logger.Debug("Disconnecting from {0} on {1}.", connection.Database, connection.Server);
                    server.Disconnect();
                }
            }
            return response;
        }
 public bool Check(AbstractConnection connection) {
     bool isReady;
     var server = new Server();
     try {
         server.Connect(connection.GetConnectionString());
         isReady = server.Connected;
         server.Disconnect();
     } catch (Exception e) {
         _logger.Warn("Error checking {0} connection. {1}", connection.Name, e.Message);
         return false;
     }
     return isReady;
 }
Esempio n. 4
0
        public bool Check(AbstractConnection connection)
        {
            bool isReady;
            var  server = new Server();

            try {
                server.Connect(connection.GetConnectionString());
                isReady = server.Connected;
                server.Disconnect();
            } catch (Exception e) {
                _logger.Warn("Error checking {0} connection. {1}", connection.Name, e.Message);
                return(false);
            }
            return(isReady);
        }
        public bool Check(AbstractConnection connection, ILogger logger) {
            if (CachedResults.ContainsKey(connection.Name)) {
                return CachedResults[connection.Name];
            }

            if (!new FileInfo(connection.Server).Exists) {
                logger.Warn("{0} not found.", connection.Server);

                var type = System.Type.GetType("System.Data.SqlServerCe.SqlCeEngine, System.Data.SqlServerCe", false, true);
                dynamic engine = System.Activator.CreateInstance(type, connection.GetConnectionString());
                engine.CreateDatabase();

                logger.Warn("Created {0} database file.", connection.Server);
            };

            return CheckConnection(connection);
        }
        public bool Check(AbstractConnection connection, ILogger logger)
        {
            if (CachedResults.ContainsKey(connection.Name))
            {
                return(CachedResults[connection.Name]);
            }

            if (!new FileInfo(connection.Server).Exists)
            {
                logger.Warn("{0} not found.", connection.Server);

                var     type   = System.Type.GetType("System.Data.SqlServerCe.SqlCeEngine, System.Data.SqlServerCe", false, true);
                dynamic engine = System.Activator.CreateInstance(type, connection.GetConnectionString());
                engine.CreateDatabase();

                logger.Warn("Created {0} database file.", connection.Server);
            }
            ;

            return(CheckConnection(connection));
        }