private void AddInsertScripts(SqlPack sqlPack, List <XmlElement> xmlNodes, List <string> variables = null) { var columnList = new List <string>(); var valueList = new List <string>(); var excluded = new List <string> { Startup, Setup, Teardown, VariableNode }; var tempQueries = new List <string>(); foreach (var xmlNode in xmlNodes.Where(x => !excluded.Contains(x.Name.ToLower()))) { foreach (var childNode in xmlNode.ChildNodes) { //Escape column names with [ColName] to avoid keyword problems //columnList.Add(string.Format("[{0}]",((XmlElement) childNode).Name)); columnList.Add(((XmlElement)childNode).Name); valueList.Add(GetFormattedValue(childNode)); } tempQueries.Add(string.Format(SqlInsertTemplate, xmlNode.Name, string.Join(",", columnList), string.Join(",", valueList))); columnList.Clear(); valueList.Clear(); } if (tempQueries.Any()) { var variableDeclarations = GetVariableDeclarations(variables); var joinedQuery = string.Join("\n", tempQueries); sqlPack.Inserts.Add(OracleHelpers.DelimitVariableBlock(variableDeclarations, joinedQuery, DataContext.Settings)); } }
private void AddScripts(List <string> collection, string currentSetupSql, List <string> variables = null) { if (!string.IsNullOrEmpty(currentSetupSql)) { var variableDeclaration = GetVariableDeclarations(variables); collection.Add(OracleHelpers.DelimitVariableBlock(variableDeclaration, currentSetupSql, DataContext.Settings)); } }