/// <summary> /// 获取比对后数据库中表的字段信息 /// </summary> /// <param name="tbname"></param> /// <returns></returns> public List <ShowColumnCompare> GetSingleTable(string tbname, CommonConfig.EqualValue tp, string tempfilename) { try { string columnurl = string.Empty; if (tp == CommonConfig.EqualValue.Source) { columnurl = "//TableList//Table[@Tablename='" + tbname + "']//Column[@Columnname='{0}']//Source"; } else if (tp == CommonConfig.EqualValue.Target) { columnurl = "//TableList//Table[@Tablename='" + tbname + "']//Column[@Columnname='{0}']//Target"; } var XmlDoc = new XmlDocument(); XmlDoc.Load(GetXMLPath(tempfilename)); var xelem = XElement.Parse(XmlDoc.SelectSingleNode("//TableList//Table[@Tablename='" + tbname + "']").OuterXml); List <ShowColumnCompare> restable = (from o in xelem.Descendants("Column") //where ((string)o.Attribute("equal").Value == "10" || (string)o.Attribute("equal").Value == "11") select new ShowColumnCompare { Columnname = o.Attribute("Columnname").Value, Isequal = o.Attribute("Isequal").Value, Ispropertyequal = o.Attribute("Ispropertyequal").Value, Type = XmlDoc.SelectSingleNode(string.Format(columnurl, o.Attribute("Columnname").Value)).Attributes["Type"].Value, Isnull = XmlDoc.SelectSingleNode(string.Format(columnurl, o.Attribute("Columnname").Value)).Attributes["Isnull"].Value, Default = XmlDoc.SelectSingleNode(string.Format(columnurl, o.Attribute("Columnname").Value)).Attributes["Default"].Value }).ToList(); return(restable); } catch (Exception ex) { throw ex; } }
/// <summary> /// 获取比对后的相关类型的表 /// </summary> /// <param name="equal"></param> /// <returns></returns> public List <TableCompareModel> GetRes_TableList(CommonConfig.EqualValue equal, string tempfilename) { try { var XmlDoc = new XmlDocument(); XmlDoc.Load(GetXMLPath(tempfilename)); var xelem = XElement.Parse(XmlDoc.InnerXml); List <TableCompareModel> reslist = (from o in xelem.Descendants("Table") where ((string)o.Attribute("Isequal").Value == CommonConfig.GetEqualValue(equal)) select new TableCompareModel { Tablename = o.Attribute("Tablename").Value, Isequal = o.Attribute("Isequal").Value }).ToList(); return(reslist); } catch (Exception ex) { throw ex; } }