修改DataTable列顺序

//data.Columns["列明"].SetOrdinal(序号);

Dictionary<string, string> dic = new Dictionary<string, string>(); dic.Add("版本", "iModeName"); dic.Add("事业部名称", "DivisName"); dic.Add("创业单元", "DivisName2"); dic.Add("养殖咨询师", "cName"); dic.Add("公司名称", "CompanyName"); dic.Add("猪场名称", "cEnteName"); dic.Add("服务人员", "cName"); dic.Add("创建日期", "dBeginDate"); dic.Add("最近操作日期", "maxDate"); dic.Add("基础母猪", "SowQuantity"); dic.Add("后备猪", "ReserveQuantity"); dic.Add("肥猪", "FatQuantity"); dic.Add("配种单", "BreedingCount"); dic.Add("产仔单", "BirthCount"); dic.Add("断奶单", "WeaningCount"); dic.Add("异常单", "AbnormalCount"); dic.Add("生产率", "SCRatio"); dic.Add("有效性", "SCRatioContent"); outputBll.OutputToXLS(ds.Tables[0] , String.Format("区域汇总报表明细{0}", DateTime.Now.ToString("yyyyMMddHHmmss")) , dic);
public void OutputToXLS(DataTable data, String filename,Dictionary<string,string> columns)
        {
            List<string> columnsList = new List<string>();
            int i = 0;
            foreach (var d in columns)
            {
                data.Columns[d.Value].SetOrdinal(i);
                i++;
                columnsList.Add(d.Key);
            }
            OutputToXLS(data, filename, columnsList, m => !String.IsNullOrEmpty(m.ColumnName));
        }

 

posted @ 2016-05-06 17:57  wjl910  阅读(1076)  评论(0)    收藏  举报