天天看点

看DataTable如何与XML进行数据交换的?

    DataTable可以看成是数据表在内存中的映射,并且在内存中使用XML格式进行描述,因此可以方便的将DataTable对象导出为XML文件或者是将已有的XML文件导出成DataTable对象。

    下面就来看一个简单的例子:

    ...

    DataTable dt = new DataTable("用户表");

    DataColumn dc;

    dc = new DataColumn();

    dc.ColumnName = "UserID";

    dc.DataType=Type.GetType("System.Int32");

    dc.AutoIncrement = True;

    dc.AutoIncrementSeed  = 1;

    dc.AutoIncrementStep = 1;

    dt.Columns.Add(dc);

    dt.PrimaryKey = new DataColumn[]{dc};

    dc = new DataColumn();

    dc.ColumnName = "UserName";

    dc.DataType = Type.GetType("System.String");

    dc.DefaultValue = "张三";

    dc.AllowDBNull = False;

    dc.ColumnName = "Sex";

    dc.DataType = Type.GetType("System.String");

    dc.DefaultValue = "男";

    //添加一行数据

    DataRow dr;

    dr = dt.NewRow();

    dr["UserName"] = "李四";

    dr["Sex"] = "女";

    dt.Rows.Add(dr);

    //添加第二行数据

    dr = dt.NewRow();

    dr["UserName"] = "王五";

    dr["Sex"] = "男";

    //将数据写入到XML文件中去

    dt.WriteXml(Server.MapPath("./Data.xml"));

    //将DataTable架构以XML架构方式写入文件

    dt.WriteXmlSchema(Server.MapPath("./Head.xml"));