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;
}