如何重新设置DataSet中的DataTable对象

类别:.NET开发 点击:0 评论:0 推荐:

     我们在一个DataSet中可以包含多个DataTable对象。

     DataSet myDataSet = new DataSet();
     DataTable tableA = new DataTable("A");
     DataTable tableB = new DataTable("B");

     myDataSet.Tables.Add(tableA);
     myDataSet.Tables.Add(tableB);

    这样在myDataSet中就包含了一个tableA和一个tableB两个DataTable对象,同时我们是通过DataSet.Tables的属性访问DataSet中包含的DataTable,例如可以通过这样语句:myDataSet.Tables["A"]来访问tableA对象。但是DataTableCollection的索引器(其实DataSet.Tables就是DataTableCollection类型)只能用户获取一个DataTable对象,无法设置。

     myDataSet.Tables["A"] = myDataSet.Tables["B"];  //错误的语法

    这样的语句在编译的时候会出错。那么我们怎样重新设置一个tableA呢?重新在声明一个DataTable对象,再将tableB Copy给新的DataTable对象,

    DataTable newTable;
    newTable = myDataSet.Tables["B"].Copy();

    此时newTable中的结构和数据和tableB是一样的。但是我们怎样将newTable copy给tableA呢?试一下下面的代码

    newTable.TableName = "A";
    myDataSet.Tables.Remove("A");
    myDataSet.Tables.Add(newTable):
    将原来的tableA从DataSet中移除,newTable的名称设置为tableA的名称,并将newTable加入到DataSet中,这样我们就可以获得一个新的tableA

  

   


 

本文地址:http://com.8s8s.com/it/it44897.htm