2015-10-08 170 views
0

我需要「以編程方式」基於xsd和數據庫中的數據創建單個xml文件(例如,此db包含20個表格)。這個數據庫是從這個xsd文件創建的。我使用DataSet.ReadXmlScheme,然後從這個數據集創建ms sql數據庫。可能嗎?使用xsd從ms sql數據庫創建xml文件

回答

0

從SQL Server表創建一個DataTable,然後使用然後使用DataTable.WriteXml將數據導出到XML文件。

此代碼將填補datatable然後將其寫入到一個XML 字符串

DataTable dt = new DataTable(); 
using (System.Data.SqlClient.SqlConnection connection = new System.Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["connection"].ConnectionString)) 
{ 
    connection.Open(); 
    System.Data.SqlClient.SqlCommand command = new System.Data.SqlClient.SqlCommand(); 
    command.Connection = connection; 
    command.CommandText = @"SELECT * FROM TableName"; 
    System.Data.SqlClient.SqlDataAdapter adapter = new System.Data.SqlClient.SqlDataAdapter(command); 
    adapter.Fill(dt); 
} 
MemoryStream ms = new MemoryStream(); 
dt.WriteXml(ms, XmlWriteMode.IgnoreSchema); 
ms.Seek(0, SeekOrigin.Begin); 
StreamReader sr = new StreamReader(ms); 
string xml = sr.ReadToEnd(); 
ms.Close(); 
return xml; 

可以用不同的方法來填補datatable,如果你想