예제 #1
0
        protected override IEnumerable <HashedTableJournalEntry> GetDeploymentHashScripts()
        {
            var scripts = _provider.GetRepeatableScripts()
                          .Select(s => new HashedTableJournalEntry(s.Name, Md5Utils.Md5EncodeString(s.Contents)));

            return(scripts);
        }
예제 #2
0
        protected IDbCommand GetInsertScriptCommand(Func <IDbCommand> dbCommandFactory, SqlScript script)
        {
            var command = dbCommandFactory();

            var scriptNameParam = command.CreateParameter();

            scriptNameParam.ParameterName = "scriptName";
            scriptNameParam.Value         = script.Name;
            command.Parameters.Add(scriptNameParam);

            var appliedParam = command.CreateParameter();

            appliedParam.ParameterName = "applied";
            appliedParam.Value         = DateTime.Now;
            command.Parameters.Add(appliedParam);

            var hashParam = command.CreateParameter();

            hashParam.ParameterName = "scriptHash";
            hashParam.Value         = Md5Utils.Md5EncodeString(script.Contents);
            command.Parameters.Add(hashParam);

            command.CommandText = GetInsertJournalEntrySql("@scriptName", "@applied", "@scriptHash");
            command.CommandType = CommandType.Text;
            return(command);
        }