public ExcelParser(string fileName) { DataSet ds = new DataSet(); string msg; if (ExcelOledbHelper.GetOneExcelFileData(fileName, out ds, out msg)) { foreach (DataTable dt in ds.Tables) { if (fileName.IndexOf("调拨订单") != -1) { LoadTransferData(dt);//加载调拨订单数据 } else { LoadData(dt); } break; } } else { throw new ApplicationException(msg); } }
/// <summary> /// 从Excel中获取数据 /// </summary> /// <param name="fileNameList"></param> /// <param name="isExcel2007"></param> private void GetExcelDataAndBindData(List <string> fileNameList, List <bool> isExcel2007) { List <DataSet> allFileData = new List <DataSet>();//每个Excel的数据存储在一个DataSet中 List <bool> fileGetResult = new List <bool>(); List <bool> fileGetErrorMsg = new List <bool>(); for (int i = 0; i < fileNameList.Count; i++) { DataSet tempDs = new DataSet(); string errorMsg = ""; bool getResult = ExcelOledbHelper.GetOneExcelFileData(fileNameList[i], out tempDs, out errorMsg); if (getResult == false) { lblPreviewResult.Text = "预览数据加载失败。原因:" + errorMsg; return; } if (tempDs.Tables.Count > 0) { allFileData.Add(tempDs); } } List <DAL.Cargos> excelCargoList = new List <DAL.Cargos>(); string errorFilterMsg = ""; bool filterResult = FilterData(allFileData, out excelCargoList, out errorFilterMsg); if (filterResult == false) { lblPreviewResult.Text = "预览数据加载失败。原因:" + errorFilterMsg; } else { lblPreviewResult.Text = "预览数据加载成功(共加载" + excelCargoList.Count.ToString() + "条数据)。请检查下面的预览数据,检查无误后请点击“导入到系统”按钮,将数据导入!"; Cache.Insert("ExcelCargoList", excelCargoList, null, DateTime.Now.AddHours(2), TimeSpan.Zero);//将数据放入缓存中,2小时后缓存自动过期 gv_CargoList_Preview.DataSource = excelCargoList; gv_CargoList_Preview.DataBind(); } }