如何把DataSet儲存為XML檔案

來源:互聯網
上載者:User
xml XML和.NET是完全融合的,很多.NET的伺服器控制項都具備了一種或更多種建立XML檔案的能力,DataSet類就包含若干種建立XML檔案的方法,在這篇文章中,我們將建立DataSet與XML之間的串連的例子,而這個例子的作用就是從資料庫裡讀出資料填入DataSet對象中,然後再從DataSet對象輸出為XML檔案儲存到磁碟裡,當然了 ,我們還可以為XML檔案建立與它相關的schema檔案。
   把DataSet儲存為XML檔案中的asp.net分頁檔(.aspx),簡單的甚至可以用可笑來形容了,實質上,它根本沒有包含一句關鍵性的代碼,我們需要做的僅僅是添加一句提示資訊--“完成”,而真正體現功能的代碼是在Code-Behind的後置代碼檔案中,下面是asp.net web頁面(.aspx):
<%@ Page Language="vb" Src="DataSetToXML.aspx.vb" Inherits="DataSetToXML" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>DataSetToXML</title>
<meta name="GENERATOR" content="Microsoft Visual Studio.NET 7.0">
<meta name="CODE_LANGUAGE" content="Visual Basic 7.0">
<meta name=vs_defaultClientScript content="JavaScript">
<meta name=vs_targetSchema content="http://schemas.microsoft.com/intellisense/ie5">
</head>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
</form>
<h3>Done!</h3>
</body>
</html>
    實際上,Code-Behind後置檔案也不是很複雜,它的大多數代碼都是我們很熟悉的了,如使用DataAdapter對象來填充DataSet對象,為了使XML不會變的很大,我們把從Northwind資料的Customers表中查詢資料的SQL的select語句加上了top 10,真正有作用的代碼只有兩行,一行用來把DataSet輸出為XML檔案,另一行建立它的Schema檔案,在文章我把它標記為紅色,在這個例子中,我們使用了DataSet類的兩個方法:WriteXML和WriteXMLSchema,而Server.Mappath則是用來把兩個檔案寫到web應用程式中的根目錄下,這個兩個檔案將分別叫做“Customers.xml“和”Custmers.xsd“,代碼如下:
Imports System
Imports System.Data
Imports System.Data.SqlClient
Imports System.Configuration

Public Class DataSetToXML : Inherits System.Web.UI.Page

  Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Dim objConn As SqlConnection
    Dim strSql As String

    strSql = "SELECT TOP 10 * FROM Customers"
    objConn = New SqlConnection(ConfigurationSettings.AppSettings("ConnectionString"))

    Dim sdaCust As New SqlDataAdapter(strSql, objConn)
    Dim dstCust As New DataSet()

    sdaCust.Fill(dstCust, "Customers")
    'Save data to xml file and schema file
    dstCust.WriteXML(Server.MapPath("Customers.xml"),XmlWriteMode.IgnoreSchema)
    dstCust.WriteXMLSchema(Server.MapPath("Customers.xsd"))
  End Sub

End Class 
   到此我為寫了一篇那麼簡單的文章而深感歉意,但實際上,真正應該感到抱歉的應該是微軟的.NET,是它讓我們從資料表把資料轉換為XML檔案變的如此簡單,我希望你能相信這一點!



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。