var dt = new DataTable
{
TableName = "MyTable"
};
//创建表格
dt.Columns.Add("id");
dt.Columns.Add("area");
dt.Columns.Add("town");
for (int i = 0; i < 3; i++)
{
var row = dt.NewRow();
var area = 100 + i;
var town = ("China" + i);
object[] objs = { area, town };
row["id"] = i;
row["area"] = objs[0];
row["town"] = objs[1];
dt.Rows.Add(row.ItemArray);
}
dt.WriteXml(@"D:\datatable.xml");
DataTable table ;
//DataSet有自动推断功能:
DataSet ds = new DataSet();
//读取XML文件内容到DataTable
ds.ReadXml(@"D:\datatable.xml");
table = ds.Tables[0];
中途遇到两个错误:
1、无法序列化 DataTable。未设置 DataTable 名称。
解决办法: dtNow.TableName = "MyTable",取一个名字就可以了
2、DataTable 不支持来自 Xml 的架构推断
解决办法: DataSet有自动推断功能,中途转换一下
另外参考(这里没验证):http://t.csdn.cn/Xmyuo