asp.net中从数据库中取数据生成xml文件
方法一:
DB db = new DB();
string sql = "select name,sex,age,hobby from stuinfo";
DataTable dt = db.Select(sql);
XmlDocument xmldoc = new XmlDocument();
XmlElement rss = xmldoc.CreateElement("rss");
rss.SetAttribute("Version", "1.0");
XmlElement school = xmldoc.CreateElement("School");
XmlElement grade = xmldoc.CreateElement("Grade");
XmlElement[] student = new XmlElement[dt.Rows.Count];
XmlElement[] name = new XmlElement[dt.Rows.Count];
XmlElement[] sex = new XmlElement[dt.Rows.Count];
XmlElement[] age = new XmlElement[dt.Rows.Count];
XmlElement[] hobby = new XmlElement[dt.Rows.Count];
for (int i = 0; i < dt.Rows.Count; i++)
{
student[i] = xmldoc.CreateElement("Student");
name[i] = xmldoc.CreateElement("Name");
sex[i] = xmldoc.CreateElement("Sex");
age[i] = xmldoc.CreateElement("Age");
hobby[i] = xmldoc.CreateElement("Hobby");
name[i].InnerText = dt.Rows[i]["name"].ToString();
sex[i].InnerText = dt.Rows[i]["sex"].ToString();
age[i].InnerText = dt.Rows[i]["age"].ToString();
hobby[i].InnerText = dt.Rows[i]["hobby"].ToString();
student[i].AppendChild(name[i]);
student[i].AppendChild(sex[i]);
student[i].AppendChild(age[i]);
student[i].AppendChild(hobby[i]);
grade.AppendChild(student[i]);
school.AppendChild(grade);
rss.AppendChild(school);
xmldoc.AppendChild(rss);
}
xmldoc.Save("D:/StuInfo.xml");
方法二:
DB db = new DB();
string sql = "select name,sex,age from stuinfo";
DataTable dt = db.Select(sql);
dt.TableName = "Student";
dt.WriteXml("D:/StuInfo.xml");
asp.net中将xml文件里面的数据往数据库中添加
stu.xml文件的内容如下:
<rss Version="1.0">
<School>
<Grade>
<Student>
<Name>王明</Name>
<Sex>男</Sex>
<Age>31</Age>
<Hobby>唱歌</Hobby>
</Student>
<Student>
<Name>张丽</Name>
<Sex>女</Sex>
<Age>32</Age>
<Hobby>跳舞</Hobby>
</Student>
</Grade>
</School>
</rss>
操作方法:
int res = 0;
DB db = new DB();
XmlDocument xd = new XmlDocument();
xd.Load("D:/stu.xml");
XmlNodeList xn = xd.SelectNodes("rss/School/Grade/Student");
string name;
string sex;
int age;
string hobby;
for (int i = 0; i < xn.Count; i++)
{
name = xn[i].SelectSingleNode("Name").InnerText;
sex = xn[i].SelectSingleNode("Sex").InnerText;
age = Convert.ToInt32(xn[i].SelectSingleNode("Age").InnerText);
hobby = xn[i].SelectSingleNode("Hobby").InnerText;
string sql = string.Format("insert into stuinfo values('{0}','{1}',{2},'{3}')", name, sex, age, hobby);
res = db.ExecuteUpdate(sql);
}
if (res > 0)
{
Response.Write("<script>alert('添加成功!');</script>");
}
else
{
Response.Write("<script>alert('添加失败!');</script>");
}
本文介绍两种方法实现ASP.NET中从数据库提取数据并生成XML文件,同时展示了如何读取XML文件并将数据插入到数据库的过程。
2112

被折叠的 条评论
为什么被折叠?



