XmlDocument xmldoc;
XmlNode xmlnode;
XmlElement xmlelem;
//1,创建到服务器同名目录下的xml文件:
方法一:
xmldoc = new XmlDocument();
//加入XML的声明段落,<?xml version="1.0" encoding="gb2312"?>
XmlDeclaration xmldecl;
xmldecl = xmldoc.CreateXmlDeclaration("1.0", "gb2312", null);
xmldoc.AppendChild(xmldecl);
//加入一个根元素
xmlelem = xmldoc.CreateElement("cross工程");
xmlelem.SetAttribute("id", "0");//设置该节点id属性
xmlelem.SetAttribute("pid", "-1");//设置该节点pid属性
xmlelem.SetAttribute("typeId", "0");//设置该节点typeId属性
xmlelem.SetAttribute("nodeName", "cross工程");//设置该节点nodeName属性
xmldoc.AppendChild(xmlelem);
Dictionary<string, string> dic = new Dictionary<string, string>();
dic.Add("0", "cross工程");
MySqlDataReader reader, read = null;
MySqlParameter[] commandParameters = new MySqlParameter[] {
};
MySqlCommand sqlcom = new MySqlCommand();
sqlcom.CommandText = "select * from treetable";
read = reader = MySqlHelper.ExecuteReader(MySqlHelper.ConnectionStringManager, CommandType.Text, sqlcom.CommandText, commandParameters);
while (reader.Read() == true)
{
string s = "//" + dic[reader["pid"].ToString()].ToString();
XmlNode root = xmldoc.SelectSingleNode(s);//查找<Employees>
XmlElement xe1 = xmldoc.CreateElement(reader["nodeName"].ToString());//创建一个<Node>节点
xe1.SetAttribute("id", reader["id"].ToString());//设置该节点id属性
xe1.SetAttribute("pid", reader["pid"].ToString());//设置该节点pid属性
xe1.SetAttribute("typeId", reader["typeId"].ToString());//设置该节点typeId属性
xe1.SetAttribute("nodeName", reader["nodeName"].ToString());//设置该节点nodeName属性
dic.Add(reader["id"].ToString(), reader["nodeName"].ToString());
root.AppendChild(xe1);//添加到<Employees>节点中
}
xmldoc.Save("G:\\Test.xml");
C# asp .net 将数据库中数据变换为xml
最新推荐文章于 2024-09-26 19:24:27 发布