asp中xml的多张表操作

1、xml生成多张表

对于复杂的xml生成多张表,还是用dom树解析依次生成各个表

2、多张表生成xml

DataRelation对象通过DataColumn对象将两个DataTable对象相互关联

先将表填充到DataSet中

1         DataSet myDataSet  = new DataSet();
2         SqlConnection con = new SqlConnection();
3         con.ConnectionString = ConfigurationManager.ConnectionStrings["PubsConnectionStringXML"].ConnectionString;
4 
5         SqlDataAdapter daTitles  = new SqlDataAdapter("select title_id, title, price, pub_id from Titles", con);       
6         daTitles.Fill(myDataSet, "Titles");        
7         SqlDataAdapter daPublishers = new SqlDataAdapter("select pub_id, pub_name from Publishers", con);
8         daPublishers.Fill(myDataSet, "Publishers");

 

DataRelation至少包含以下四项内容:

(1)第一个表的名称(2)第一个表的列名(3)第二个表的名称(4)第二个表的列名

两列的数据类型必须相同

1 DataColumn       parentColumn = myDataSet.Tables["Publishers"].Columns["pub_id"];
2 DataColumn      childColumn = myDataSet.Tables["Titles"].Columns["pub_id"];
3 DataRelation      myDataRelation = new DataRelation("TitlePublishers", parentColumn, childColumn);
4 myDataRelation.Nested=true;/*生成的xml文件是否嵌套*/
5 myDataSet.Relations.Add(myDataRelation);
6 myDataSet.WriteXml(Server.MapPath("xml/PubTitlesNested.xml"), XmlWriteMode.WriteSchema);

 

 

posted @ 2013-05-30 00:26  深蓝rgb  阅读(246)  评论(0)    收藏  举报