C#創(chuàng)建DataSet對象詳細(xì)介紹
C#語言有很多值得學(xué)習(xí)的地方,這里我們主要介紹C#創(chuàng)建DataSet對象,包括介紹在視圖菜單上,選擇工具箱以顯示“工具箱”等方面。
本文說明如何C#創(chuàng)建DataSet對象,以及如何使用WriteXML方法將該對象包含的數(shù)據(jù)導(dǎo)出到 XML 文件中。生成的 XML 文件可以直接在 Excel 中打開。為便于說明,使用 Jet OLEDB 提供程序從 Microsoft Access Northwind 示例數(shù)據(jù)庫C#創(chuàng)建DataSet對象。但是,類似的代碼可與您使用 Visual C#創(chuàng)建DataSet對象一起使用。
1. 啟動 Microsoft Visual Studio .NET。在文件菜單上,單擊新建,然后單擊項目。從 Visual C# 項目類型中選擇Windows 應(yīng)用程序。默認(rèn)情況下創(chuàng)建 Form1。
2. 在視圖菜單上,選擇工具箱以顯示“工具箱”,然后向 Form1 中添加一個按鈕。
3. 雙擊Button1。將出現(xiàn)該窗體的代碼窗口。
4. 將下面的using 指令添加到 Form1.cs 頂部:
- using System.Data.OleDb;
- using System.Xml;
5.將下面的私有成員變量添加到 Form1 類中:
- private string strConn =Provider=Microsoft.Jet.OLEDB.4.0;
- Data Source= + C:\\Program Files\\Microsoft Office
- \\Office10\\Samples\\ + Northwind.mdb;;
注意:您可能需要修改連接字符串中 Northwind.mdb 的路徑,以便與您安裝的位置相匹配。
6.在button1_Click 處理程序中添加以下代碼:
- //Connect to the data source.OleDbConnection objConn =
new OleDbConnection (strConn);- try{
- objConn.Open();
- //Fill a dataset with records from the Customers table.OleDbCommand objCmd =
new OleDbCommand(Select CustomerID, CompanyName, ContactName+ Country,
Phone from Customers, objConn);- OleDbDataAdapter objAdapter = new OleDbDataAdapter();
- objAdapter.SelectCommand = objCmd;
- DataSet objDataset = new DataSet();
- objAdapter.Fill(objDataset);
- //Create the FileStream to write with.System.IO.FileStream fs =
new System.IO.FileStream(C:\\Customers.xml,System.IO.FileMode.Create);- //Create an XmlTextWriter for the FileStream. System.Xml.XmlTextWriter xtw =
new System.Xml.XmlTextWriter(fs, System.Text.Encoding.Unicode);- //Add processing instructions to the beginning of the XML file, one
- //of which indicates a style sheet.xtw.WriteProcessingInstruction
(xml, version='1.0');- //xtw.WriteProcessingInstruction(xml-stylesheet,
- // type='text/xsl' href='customers.xsl');
- //Write the XML from the dataset to the file.objDataset.WriteXml(xtw);
- xtw.Close();
- //Close the database connection.
- objConn.Close();
- }
- catch (System.Exception ex)
- {
- MessageBox.Show(ex.Message);
- }
【編輯推薦】