csharp 復制DataTable修改某列的值

  /// <summary>
        /// 塗聚文 
        /// 2012-04-14
        /// </summary>
        /// <param name="table"></param>
        /// <returns></returns>
        static DataTable GetDecTable(DataTable table)
        {
            if (!object.Equals(table, null))//
            {
                     // foreach(DataRow myRow in thisTable.Rows){
                     //foreach(DataColumn myCol in thisTable.Columns){
                     //   Console.WriteLine(myRow[myCol]);
                     //}

                //DataTable tablecopy = table.Copy();
                DataTable tableDec=new DataTable();
                //tableDec = table.Copy();
                //得到列的名稱和數據類型
                //foreach (DataColumn column in table.Columns)
                //{
                //    tableDec.Columns.Add(column.ColumnName,column.DataType);
                //}
                //    foreach (DataColumn myCol in table.Columns)
                //    {
                //        if (myCol.ColumnName == "EmployeeNo")
                //        { 
                //           // row[myCol]
                //        }
                //foreach (DataRow row in table.Rows) // Loop over the rows.
                //{ 

                //        //tableDec.Rows.Add(myRow[myCol])
                //    }
                //    string employeeNo = CryptographerUTF.GetDecryptString(row["EmployeeNo"].ToString());
                //    string employeeName = CryptographerUTF.GetDecryptString(row["EmployeeName"].ToString());
                //    tableDec.Rows.Add();
                //}
                
                //克隆表結構,數據記錄沒有填充

                //tableDec = table.Clone();
                
                //foreach (DataColumn gcol in datatable.Columns)
                //{
                //    if (gcol.ColumnName == "EmployeeNo")
                //    {
                //        //修改數據類型

                //        gcol.DataType = typeof(String);
                //    }
                //}
                //為新表填充數據
                    //foreach (DataRow row in tableDec.Rows)
                    //{
                    //    DataRow 个nr = datatable.NewRow();
                    //    nr["EmployeeName"] = row["EmployeeName"];
                    //    //修改記錄

                    //    nr["EmployeeNo"] = row["EmployeeNo"] .toString()";

                    //    nr["sex"] = row["sex"];
                    //    datatable.Rows.Add(nr);
                    //}

                 //復制表結構和數據
                 tableDec = table.Copy();
                //为改變指定列的數據
                foreach (DataRow row in tableDec.Rows)
                {
                    //修改記錄的值

                    row["EmployeeNo"] = CryptographerUTF.GetDecryptString(row["EmployeeNo"].ToString()); 
                    //修改記錄值
                    row["EmployeeName"] = CryptographerUTF.GetDecryptString(row["EmployeeName"].ToString()); 

                }
                

                return tableDec;

            }
            else
            {
                return null;
            }
        }
哲学管理(学)人生, 文学艺术生活, 自动(计算机学)物理(学)工作, 生物(学)化学逆境, 历史(学)测绘(学)时间, 经济(学)数学金钱(理财), 心理(学)医学情绪, 诗词美容情感, 美学建筑(学)家园, 解构建构(分析)整合学习, 智商情商(IQ、EQ)运筹(学)成功.---Geovin Du(涂聚文)
原文地址:https://www.cnblogs.com/geovindu/p/2447261.html