Пример #1
0
        public override bool Execute()
        {
            bool success = true;

            LogMessage(
                MessageImportance.Normal,
                string.Format("Loading config at {0}", ConfigFilePath));

            XElement config = XElement.Load(ConfigFilePath);

            var props = config.Descendants("PropertyGroup").Elements();

            var connStr = GetConnectionString(props);

            var scripts = config.Descendants("AlterScript");

            IEnumerator <XElement> e = scripts.GetEnumerator();

            while (e.MoveNext())
            {
                string file                 = Path.Combine(ScriptsDirectory, e.Current.Value);
                string variables            = GenerateVariables(props);
                DatabaseCreateResult result = RunScript(connStr, file, variables);
                if (!result.IsSuccessful)
                {
                    success = false;
                    break;
                }
            }

            return(success);
        }