private List <IAbstractObjectStructure> GetEqualObjs() { var grps = new HashSetEx <string>(); var objs = new List <IAbstractObjectStructure>(); foreach (var elem in m_diff.Actions.Elements) { grps.Add(elem.GroupId); } foreach (var obj in m_src.Tables) { if (grps.Contains(obj.GroupId)) { continue; } objs.Add(obj); } foreach (var spec in m_src.GetAllSpecificObjects()) { if (grps.Contains(spec.GroupId)) { continue; } objs.Add(spec); } return(objs); }
private string GetMemberName(HashSetEx <string> members, string name, string altnamebase) { name = name.Replace(" ", "_"); if (altnamebase != null) { altnamebase = altnamebase.Replace(" ", "_"); } if (!members.Contains(name)) { members.Add(name); return(name); } if (altnamebase != null && altnamebase.EndsWith("_ID") && !members.Contains(altnamebase.Substring(0, altnamebase.Length - 2))) { string n = altnamebase.Substring(0, altnamebase.Length - 2); members.Add(n); return(n); } string name0 = name; int idx = 1; while (members.Contains(name)) { name = name0 + idx.ToString(); idx++; } members.Add(name); return(name); }
private void codeEditorQuery_Leave(object sender, EventArgs e) { try { SaveSource(false); } catch (Exception err) { CurCache.TargetChanged = false; CurCache.SourceModel = null; StdDialog.ShowError(Errors.ExtractImportantException(err).Message); } if (CurCache.SourceModel != null) { var cols = new HashSetEx <string>(); foreach (var col in CurCache.SourceModel.Columns) { if (cols.Contains(col.ColumnName)) { CurCache.TargetChanged = false; CurCache.SourceModel = null; StdDialog.ShowError(Texts.Get("s_datasynerr_duplicate$column", "column", col.ColumnName)); break; } cols.Add(col.ColumnName); } } }
//protected override void ParseVersion() //{ // m_version = new MySqlServerVersion(m_serverVersion); //} protected void WantShowTable(TableStructure table) { if (m_loadedTables.Contains(table.FullName.Name)) { return; } LoadShowTable(table); m_loadedTables.Add(table.FullName.Name); }
public string[] Complement(List <string> cols) { var incols = new HashSetEx <string>(cols); var res = new List <string>(); foreach (var item in Columns) { if (!incols.Contains(item.Target)) { res.Add(item.Target); } } return(res.ToArray()); }
private static string AllocName(HashSetEx <string> usedNames, ref int lastIndex, string preffered, string prefix) { string name; if (preffered != null) { name = preffered; int idx = 1; while (usedNames.Contains(name)) { name = String.Format("{0}{1}", name, idx++); } } else { name = String.Format("{0}_{1}", prefix, ++lastIndex); } usedNames.Add(name); return(name); }
private List <DbDiffAction> GetColumnActions() { var res = new List <DbDiffAction>(); if (m_shownAction == null) { return(res); } if (!(m_shownAction.SourceObject is ITableStructure) || !(m_shownAction.TargetObject is ITableStructure)) { return(res); } var grps = new HashSetEx <string>(); foreach (var elem in m_shownAction.Elements) { if (!(elem.AnyObject is IColumnStructure)) { continue; } res.Add(elem); grps.Add(elem.GroupId); } foreach (var scol in ((ITableStructure)m_shownAction.SourceObject).Columns) { if (grps.Contains(scol.GroupId)) { continue; } grps.Add(scol.GroupId); res.Add(new DbDiffAction(m_diff) { GroupId = scol.GroupId }); } res.Sort((a, b) => ((IColumnStructure)a.AnyObject).ColumnOrder - ((IColumnStructure)b.AnyObject).ColumnOrder); return(res); }
public bool IsAltered(IAbstractObjectStructure obj) { return(alteredObjects.Contains(obj.GroupId)); }