private DataTable UpdateDataTable(DataTable argDataTable)
        {
            DataTable dt = new DataTable();
                      dt = argDataTable.Clone();
            foreach (DataColumn column in dt.Columns)
            {
                if (column.ColumnName == "ordernum")
                {
                    //修改列类型
                    column.DataType = typeof(string);
                }
            }
           
            return dt;
        }通过上述代码可以将表的字段ordernum变更为字符型,但是返回的dt只有结构,数据就没有了,有什么好的办法在更改字段类型后,数据仍然存在?

解决方案 »

  1.   

    lz有必要这么搞么?你可以获取到数据以后再转化为自己想要的类型啊 在说了 从这个dt中得到的数据都是object的
    如果实在想搞 应该是数据库里面的一个属性了
      

  2.   

    datatable里的确是没必要修改类型,查询的时候可以转换类型。
      

  3.   

    Clone 本来就是只复制结构,不复制数据的要复制数据 用 Copy
      

  4.   

     dt = argDataTable.Clone();
     你只是克隆一个结构,怎么会有数据?