protected void btnImport_ServerClick(object sender, EventArgs e)
{
if (this.accessaryExcel.Files.Count == 0)
{
this.Master.ShowAlertMsg(MyMsg.ShowMyMessage("未能获取到导入文件,请重新上传。"));
return;
}
string strFileName = this.accessaryExcel.Files[0].PhysicsFileName;
string strCon = String.Format(CGeneral.GetSysConfig("ExcelConnectionString"), strFileName);
string strCmdText = "SELECT * FROM [{0}]";
OleDbConnection conn = new OleDbConnection(strCon);
OleDbDataAdapter da = new OleDbDataAdapter();
DataSet dsData = new DataSet();
conn.Open();
//tbSchema存储该Execl中所有Sheet的名称 等信息(无具体内容)
DataTable tbSchema = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
foreach (DataRow rowList in tbSchema.Rows)
{
string strTBName = rowList["TABLE_NAME"].ToString();
da.SelectCommand = new OleDbCommand(String.Format(strCmdText, strTBName), conn);
da.Fill(dsData, strTBName);
}
if (conn.State == ConnectionState.Open)
{
conn.Close();
}
da.Dispose();
conn.Dispose();
DataTable dtEmployeeData = new DataTable();
dtEmployeeData = dsData.Tables[0];
DataTable dtEmployeeEducationData = new DataTable();
dtEmployeeEducationData = dsData.Tables[1];
DataTable dtEmployeeFamilyData = new DataTable();
dtEmployeeFamilyData = dsData.Tables[2];
DataTable dtEmployeeJCData = new DataTable();
dtEmployeeJCData = dsData.Tables[3];
DataTable dtEmployeeProfessionData = new DataTable();
dtEmployeeProfessionData = dsData.Tables[4];
DataTable dtEmployeeWorkData = new DataTable();
dtEmployeeWorkData = dsData.Tables[5];
DataTable dtPersonnelChangeData = new DataTable();
dtPersonnelChangeData = dsData.Tables[6];
}
}
C# 导入Excel多表情况下,获取表名且返回DataSet类型
最新推荐文章于 2025-04-16 17:27:48 发布