예제 #1
0
        /// <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);
        }
예제 #2
0
        /// <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);
        }
예제 #3
0
        /// <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);
        }