根据SQL语句生成同一类型的XML文件

    技术2022-11-26  37

     /// <summary>       /// 根据SQL语句生成同一类型的XML文件       /// </summary>       /// <param name="sql">sql</param>       /// <param name="fileName">文件名</param>       /// <param name="fatherName">父节点</param>       /// <param name="childName1">子节点1</param>       /// <param name="childName2">子节点2</param>        public void CreateXmlBySql(string sql, string fileName, string fatherName, string childName1, string childName2)        {            HttpServerUtility Server;            DataTable dt = new DataTable();            Server = HttpContext.Current.Server;            XmlDocument xml = new XmlDocument();            XmlElement xmlFather, xmlChild1, xmlChild2;            xml.LoadXml(@"<xml name=""StockGrade"" version=""1.0"" encoding=""utf-8"" />");            XmlElement r = xml.DocumentElement;//创建一个XML对象            dt = Global.busLogicInner.GetPJBySql(sql);//根据sql语句获取数据            if (dt != null)            {                foreach (var col in from v in dt.AsEnumerable() select v)                {                    xmlFather = xml.CreateElement(fatherName);                    xmlChild1 = xml.CreateElement(childName1);                    xmlChild1.InnerText = col[childName1].ToString();                    xmlFather.AppendChild(xmlChild1);                    xmlChild2 = xml.CreateElement(childName2);                    xmlChild2.InnerText = col[childName2].ToString();                    xmlFather.AppendChild(xmlChild2);                    r.AppendChild(xmlFather);                }                xmlFather = xml.CreateElement(fatherName);                xmlChild1 = xml.CreateElement(childName1);                xmlChild1.InnerText = "END";                xmlFather.AppendChild(xmlChild1);                xmlChild2 = xml.CreateElement(childName2);                xmlChild2.InnerText = "END";                xmlFather.AppendChild(xmlChild2);                r.AppendChild(xmlFather);                string filePath = Server.MapPath(fileName);                if (File.Exists(filePath))                    File.Delete(filePath);                xml.Save(filePath);            }        }

    最新回复(0)