public async Task <bool> HasHistory(IAppMigration migrationInfo)
        {
            if (TryTestForTable(_historyTableName) == false)
            {
                return(false);
            }

            // else
            return(await MigrationHistory.AnyAsync(x =>
                                                   x.Id == migrationInfo.Id &&
                                                   x.Migration == migrationInfo.Migration
                                                   ));
        }
        public void LogHistory(IAppMigration migrationInfo, MigrationResult result, DateTime started, DateTime finished)
        {
            var migrationRecord = new MigrationRecord()
            {
                Id         = migrationInfo.Id,
                Migration  = migrationInfo.Migration,
                Executed   = started,
                Duration   = finished.Subtract(started).Milliseconds,
                Result     = result.Status.ToString(),
                StatusCode = (int)result.Status,
                Message    = result.Message
            };

            MigrationHistory.Add(migrationRecord);
        }