现在DataTable 存储和读取为XML非常方便,在网络中传输直接访问数据库,导致数据的安全性问题。如果通过中间软件转换下再传输就大为好多了。DataTable 存储为XML先建立table , 建立结构,建立writer,就可以了
private string DT2XML() { DataTable dt = new DataTable("TestDB"); DataColumn dc1 = new DataColumn("itemID", Type.GetType("System.String")); DataColumn dc2 = new DataColumn("itemName", Type.GetType("System.String")); dt.Columns.Add(dc1); dt.Columns.Add(dc2); for (int i = 0; i <5; i++) { DataRow dr = dt.NewRow(); dr["itemID"] = i.ToString(); dr["itemName"] = "TestXML->"+i.ToString(); dt.Rows.Add(dr); } string xmlstr; System.IO.StringWriter writer = new System.IO.StringWriter(); dt.WriteXml(writer); xmlstr = writer.ToString(); return xmlstr; }读取也类似,但要先建立好打DataTable的结构再读取。
private void XML2DT(string strXml) { DataTable dt = new DataTable("TestDB"); DataColumn dc1 = new DataColumn("itemID", Type.GetType("System.String")); DataColumn dc2 = new DataColumn("itemName", Type.GetType("System.String")); dt.Columns.Add(dc1); dt.Columns.Add(dc2); System.IO.StringReader reader = new System.IO.StringReader(strXml); dt.ReadXml(reader);
dataGridView1.DataSource = dt; }