现在DataTable 存储和读取为XML非常方便,在网络中传输直接访问数据库,导致数据的安全性问题。如果通过中间软件转换下再传输就大为好多了。
DataTable 存储为XML先建立table , 建立结构,建立writer,就可以了
{
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;
}