public void CheckDatabaseVersion()
        {
            upgradeEngine = DeployChanges.To
                            .SqlDatabase(ConnectionInfo.ConnectionString)
                            .WithScriptsEmbeddedInAssembly(this.GetType().Assembly)
                            .LogToConsole()
                            .Build();

            IsUpgradeRequired = upgradeEngine.IsUpgradeRequired();
            if (IsUpgradeRequired.HasValue && IsUpgradeRequired.Value == false)
            {
                Status = DatabaseHelperStatusEnum.CelsusDatabaseVersionOk;
            }
            if (IsUpgradeRequired.HasValue && IsUpgradeRequired.Value == true)
            {
                Status = DatabaseHelperStatusEnum.CelsusDatabaseVersionOld;
            }
            //var tr=upgradeEngine.GetScriptsToExecute();
        }
Exemple #2
0
        static int Main(string[] args)
        {
            string connectionString = ConfigurationManager.ConnectionStrings["DbConnection"].ConnectionString;

            UpgradeEngine engine =
                DeployChanges.To
                .SqlDatabase(connectionString)
                .WithScriptsEmbeddedInAssembly(Assembly.GetExecutingAssembly())
                .LogToConsole()
                .Build();

            if (!engine.IsUpgradeRequired())
            {
                Console.WriteLine("No upgrade required, database is already up to date.");
                return(0);
            }

            return(PerformUpgrade(engine));
        }
Exemple #3
0
 void WhenCheckIfDatabaseUpgradeIsRequired()
 {
     upgradeEngine     = upgradeEngineBuilder.Build();
     isUpgradeRequired = upgradeEngine.IsUpgradeRequired();
 }
Exemple #4
0
 public bool IsUpgradeRequired() => _upgradeEngine.IsUpgradeRequired();
Exemple #5
0
        private static int Main(string[] args)
        {
            bool debug = (args.Length != 0);

            var folderPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\MeetTracker";

            try
            {
                Directory.CreateDirectory(folderPath);
            }
            catch (IOException e)
            {
                Console.WriteLine("Could not create path : {0}", e.ToString());
                folderPath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);
            }

            var connectionString = "Data Source=" + folderPath + "\\meet.db; Version=3";

            UpgradeEngine upgrader = null;

            try
            {
                upgrader =
                    DeployChanges.To
                    .SQLiteDatabase(connectionString)
                    .WithScriptsEmbeddedInAssembly(Assembly.GetExecutingAssembly())
                    .LogToConsole()
                    .Build();
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                return(-1);
            }

            if (!upgrader.IsUpgradeRequired())
            {
                Console.ForegroundColor = ConsoleColor.Green;
                Console.WriteLine("Success!");
                Console.ResetColor();
                if (debug)
                {
                    Console.ReadKey();
                }
                return(0);
            }

            DatabaseUpgradeResult result = null;

            try
            {
                result = upgrader.PerformUpgrade();
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                if (!result.Successful)
                {
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine(result.Error);
                    Console.ResetColor();
                    if (debug)
                    {
                        Console.ReadKey();
                    }
                    return(-1);
                }
            }

            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine(connectionString);
            Console.WriteLine("Success!");
            Console.ResetColor();
            if (debug)
            {
                Console.ReadKey();
            }
            return(0);
        }