菜鳥學習ado.net(三)

這次是dataset從多個表中獲得數據和dataset數據寫入xml還有dataset獲取xml數據。
下面是一個省市查詢,省名和市名放在兩個表中。
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Configuration;
using System.Data;
namespace 省市查詢
{
        class Program
        {
                static void Main(string[] args)
                {
                        string connString = ConfigurationManager.ConnectionStrings["ConString"].ConnectionString;//獲取配置文件App.config的連接字符串
                        using (SqlConnection conn = new SqlConnection(connString))
                        {
                                SqlDataAdapter thisDataAdapter = new SqlDataAdapter("select proID,proName from promary",conn);//建立Adapter對象
                                SqlCommandBuilder thisBuild = new SqlCommandBuilder(thisDataAdapter);//建立commandBuild對象
                                DataSet thisDataSet = new DataSet();//創建DataSet
                                //創建sqlDataAdapter來填充thisDataSet
                                SqlDataAdapter proAdapter = new SqlDataAdapter("select * from promary",conn);
                                SqlDataAdapter cityAdapter = new SqlDataAdapter("select * from city",conn);
                                proAdapter.Fill(thisDataSet,"promary");
                                cityAdapter.Fill(thisDataSet,"city");
                                DataRelation promcity = thisDataSet.Relations.Add("promcity", thisDataSet.Tables["promary"].Columns["proID"],thisDataSet.Tables["city"].Columns["proID"]);
                                foreach (DataRow proRow in thisDataSet.Tables["promary"].Rows)
                                {
                                        Console.WriteLine("省/地區:"+proRow["proName"]);
                                        foreach (DataRow city in proRow.GetChildRows(promcity))
                                        {
                                                Console.WriteLine("        市級:"+city["cityName"]);
                                        }

                                }

                                Console.ReadLine();



                        }

                }
        }
}
執行結果:
下面是dataset數據寫入xml中
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Configuration;
using System.Data;

namespace 省市查詢
{
        class Program
        {
                static void Main(string[] args)
                {
                        string connString = ConfigurationManager.ConnectionStrings["ConString"].ConnectionString;//獲取配置文件App.config的連接字符串
                        using (SqlConnection conn = new SqlConnection(connString))
                        {
                                SqlDataAdapter thisDataAdapter = new SqlDataAdapter("select proID,proName from promary", conn);//建立Adapter對象
                                SqlCommandBuilder thisBuild = new SqlCommandBuilder(thisDataAdapter);//建立commandBuild對象
                                DataSet thisDataSet = new DataSet();//創建DataSet
                                //創建sqlDataAdapter來填充thisDataSet
                                SqlDataAdapter proAdapter = new SqlDataAdapter("select * from promary", conn);
                                SqlDataAdapter cityAdapter = new SqlDataAdapter("select * from city", conn);
                                proAdapter.Fill(thisDataSet, "promary");
                                cityAdapter.Fill(thisDataSet, "city");
                                DataRelation promcity = thisDataSet.Relations.Add("promcity", thisDataSet.Tables["promary"].Columns["proID"], thisDataSet.Tables["city"].Columns["proID"]);
                                promcity.Nested = true;
                                thisDataSet.WriteXml(@"E:\net學習資料\我的程序\省市查詢\寫入xml\XMLFile.xml");
                                Console.WriteLine("數據寫入完成!");
                                Console.ReadLine();



                        }

                }
        }
}
執行結果:
下面是dataset獲取xml數據
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;

namespace 讀入xml到DataSet
{
        class Program
        {
                static void Main(string[] args)
                {
                        DataSet thisDataSet = new DataSet();
                        thisDataSet.ReadXml(@"E:\net學習資料\我的程序\省市查詢\寫入xml\XMLFile.xml");
                        foreach (DataRow cutRow in thisDataSet.Tables["promary"].Rows)
                        {
                                Console.WriteLine("省/市:"+cutRow["proName"]+"         省/市ID:"+cutRow["proID"]);
                            
                        }
                        Console.ReadLine();
                }
        }
}
Frank
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章