예제 #1
0
        public Domain.Data.DatabaseUpgradeResult ApplyAllUpgrades()
        {
            var result = upgradeEngine.PerformUpgrade();

            var output = new Domain.Data.DatabaseUpgradeResult
            {
                Success         = result.Successful,
                UpgradesApplied = result
                                  .Scripts
                                  .Select(x => new SimpleUpgradeName {
                    Name = x.Name
                })
                                  .Cast <IUpgradeName>()
                                  .ToList(),
            };

            LogCompletion(output, result.Error);

            return(output);
        }
예제 #2
0
        void LogCompletion(Domain.Data.DatabaseUpgradeResult result, Exception exception)
        {
            string message;

            if (exception != null)
            {
                message = "Completed database upgrade process, with errors";
            }
            else
            {
                message = "Completed database upgrade process successfully";
            }

            logger.Info(message);
            logger.Info(result);

            if (exception != null)
            {
                logger.Error("The database upgrade process raised an exception", exception);
            }
        }