我正在使用sql數據庫來保存簡單的筆記應用程序的數據,使用數據集和GUI綁定數據庫。簡單的工作。 在這裏使用SQL是沒用的,我想用相同的數據集將數據保存到一個簡單的XML文件而不是SQL中。如何使用數據集保存到XML
我使用Visual Studio 2010和編程在C#.NET 4.0
我正在使用sql數據庫來保存簡單的筆記應用程序的數據,使用數據集和GUI綁定數據庫。簡單的工作。 在這裏使用SQL是沒用的,我想用相同的數據集將數據保存到一個簡單的XML文件而不是SQL中。如何使用數據集保存到XML
我使用Visual Studio 2010和編程在C#.NET 4.0
單個表的數據集,以XML
private void SingleTableToXml()
{
DataSet myDS = getDataSet();
// To write out the contents of the DataSet as XML,
// use a file name to call the WriteXml method of the DataSet class
myDS.WriteXml(Server.MapPath("filename.xml"), XmlWriteMode.IgnoreSchema);
}
如果數據集中有一個以上的表,說這一個主從關係,那麼,方法是完全一樣的。只要確保創建表之間的DataRelation和Nested
屬性設置的關係爲true如下面的代碼
//Get the primary key column from the master table
DataColumn primarykey = myDS.Tables["Categories"].Columns["CategoryID"];
//Get the foreign key column from the detail table
DataColumn foreignkey = myDS.Tables["Products"].Columns["CategoryID"];
//Assign a relation
DataRelation relation = myDS.Relations.Add(primarykey, foreignkey);
//Ask ADO.NET to generate nested XML nodes
relation.Nested = true;
希望它可以幫助
你沒有指定你的編程環境。假設你正在使用.NET ....
使用dataSet的WriteXml方法。
這裏有一篇文章:http://msdn.microsoft.com/en-us/library/ms233698%28VS.80%29.aspx
我正在使用Visual Studio 2010和C#.Net 4.0編程 – SMUsamaShah 2010-10-17 23:29:29
下面是從數據集生成XML的好例子
DataSet ds = new DataSet();
DataTable dt = new DataTable();
DataColumn dc;
DataRow dr;
ds.DataSetName = "products";
dt.TableName = "product";
dc = new DataColumn("product_id");
dt.Columns.Add(dc);
dc = new DataColumn("product_name");
dt.Columns.Add(dc);
dr = dt.NewRow();
dr["product_id"] = 1;
dr["product_name"] = "Monitor";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["product_id"] = 2;
dr["product_name"] = "Mouse";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["product_id"] = 3;
dr["product_name"] = "KeyBoard";
dt.Rows.Add(dr);
ds.Tables.Add(dt);
string strXML= ds.GetXml();
System.IO.StreamWriter sw = new System.IO.StreamWriter(Server.MapPath("datasetxml.xml"));
sw.WriteLine(strXML);
sw.Close();
我用的是:
private void buttonSaveXML_Click(object sender, EventArgs e)
{
SaveFileDialog saveFile = new SaveFileDialog();
saveFile.Filter = "XML Files|*.xml";
saveFile.Title = "Save a Xml File";
saveFile.ShowDialog();
if (saveFile.FileName != "")
{
FileStream fs =
(FileStream)saveFile.OpenFile();
DataSet.WriteXml(fs);
}
{
DataSet是我使用的數據集和一個單獨的按鈕使其易於使用是一個好主意。
好吧,寫入XML我下次如何加載?的ReadXml? – SMUsamaShah 2010-10-19 22:23:24
這就是工作。謝謝! – SMUsamaShah 2010-10-19 22:25:53
是的。 ReadXml是你的方式。您可以在[MSDN參考頁面](http://bit.ly/a53DOL)上找到每個覆蓋的示例。祝你好運! – Lorenzo 2010-10-19 23:30:43