/// <summary> /// 列名をDB列名から呼称列名に変換 /// </summary> /// <param name="dt"></param> /// <returns></returns> public DataTable CopyAsDisplayData(DataTable dt) { if (dt.Columns.Count == 0) { //検索結果が0件の場合は、列定義より列を生成する。 foreach (ColumnInfo ci in this.ColConf.ColList) { dt.Columns.Add(ci.DBName); } } ////表示用の列名に変更 DataTable newTable = null; DeepCopyUtil dcu = new DeepCopyUtil(); newTable = (DataTable)dcu.DeepCopy(dt); foreach (DataColumn dc in newTable.Columns) { if (_dicByDBName.ContainsKey(dc.ColumnName)) { ColumnInfo ci = _dicByDBName[dc.ColumnName]; dc.ColumnName = ci.ColName; } } return(newTable); }
/// <summary> /// Excelファイル読み込み(シートインデックス指定) /// 存在しない場合はnullを返却 /// </summary> /// <param name="filePath">ファイルパス</param> /// <param name="sheetIndex">シートインデックス</param> /// <returns>シートを読み込んだDataTable</returns> public DataTable ReadExcelDataBySheetIndex(string filePath, int sheetIndex) { DataSet ds = null; DataTable dt = null; ds = ReadExcelDataAsDataSet(filePath); if (0 <= sheetIndex && sheetIndex < ds.Tables.Count) { DeepCopyUtil dcu = new DeepCopyUtil(); dt = ds.Tables[sheetIndex]; } return(dt); }
/// <summary> /// Excelファイル読み込み(シート名指定) /// シート名が存在しない場合はnullを返却 /// </summary> /// <param name="filePath">ファイルパス</param> /// <param name="sheetName">シート名</param> /// <returns>シートを読み込んだDataTable</returns> public DataTable ReadExcelDataOneSheet(string filePath, string sheetName) { DataSet ds = null; DataTable dt = null; ds = ReadExcelDataAsDataSet(filePath); if (ds.Tables.Contains(sheetName)) { DeepCopyUtil dcu = new DeepCopyUtil(); dt = dcu.DeepCopy(ds.Tables[sheetName]); } return(dt); }