你的childclassdatatable中的列是否与((DataRow)System.Web.HttpContext.Current.Cache["ClassInfo_"+ChildClassID]一样?如果不同,你怎么倒入?

解决方案 »

  1.   

    克隆Clone()方法都有这么一个备注:
    新xxx中的引用与原始xxx中的引用指向相同的对象.
      

  2.   

    倒入的办法就是最最上面提供的那段呀,DataTable从DataRow中克隆的结构啊
      

  3.   

    acewang,请详细说说好吗?我只是克隆结构啊,没有克隆数据啊?
      

  4.   

    clone并不像你想象的那样,只要结构不要数据,而是它本身的定义就已经是“新xxx中的引用与原始xxx中的引用指向相同的对象.”,不因为你想的那样就自豪克隆结构不克隆数据:-)
    也就是说你ImportRow给自己当然是错的了。
      

  5.   

    DataTable.NewRow,将你的DataRow里面的值对应付给NewRow
      

  6.   

    不对呀,我现在从DataRow1从获取了结构克隆给DataTable,但我后面用ImportRow导入的是DataRow2、DataRow3、DataRow4、DataRow5啊!虽然这些DataRow的父DataTable可能都是一个表~~如果用NewRow的话,似乎不对呀,要重新建立一个行,交给一个新的DataRow对象?那还是不对呀?麻烦您在说清楚一点,谢谢
      

  7.   

    acewang终于TMD的解决了,不过还是没出祸根来,是换了个方式解决的
    这样:
    ChildClassDataTable.Rows.Add(((DataRow)System.Web.HttpContext.Current.Cache["ClassInfo_"+ChildClassID]).ItemArray);DataTable使用Rows.add来增加行,其中可以通过数组放如数据,在用DataRow的ItemArray方法获取DataRow的数组形式……估计效率会大打折扣……难道没有直接的办法吗?