使用C#和VB.Net将Excel SpreadSheet数据导入ASP.Net中的SQL Server

我有这段代码,我试图从Excel文件导入数据到SQL服务器使用ASP.net,但它是抛出一个错误,我不能找出为什么? 编译时说,连接string属性尚未初始化。 任何帮助表示赞赏谢谢?

protected void LoadFile(object sender, EventArgs e) { { //Upload and save the file string excelPath = Path.GetFileName(FileUpload1.PostedFile.FileName); string conString = string.Empty; string extension = Path.GetExtension(FileUpload1.PostedFile.FileName); switch (extension) { case ".xls": //Excel 97-03 conString = ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + "; Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=2\""); break; case ".xlsx": //Excel 07 or higher conString = (@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + "; Extended Properties='Excel 12.0;HDR=YES;IMEX=1;';"); break; } conString = string.Format(conString, excelPath); using (OleDbConnection excel_con = new OleDbConnection(conString)) { excel_con.Open(); string sheet1 = excel_con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null).Rows[0]["toll"].ToString(); DataTable dtExcelData = new DataTable(); dtExcelData.Columns.AddRange(new DataColumn[4] { new DataColumn("Tag", typeof(string)), new DataColumn("Exit",typeof(string)), new DataColumn("Location",typeof(string)), new DataColumn("Amount",typeof(decimal)) }); using (OleDbDataAdapter oda = new OleDbDataAdapter("SELECT * FROM [" + sheet1 + "]", excel_con)) { oda.Fill(dtExcelData); } excel_con.Close(); using (SqlConnection con = new SqlConnection(ConString)) { using (SqlBulkCopy sqlBulkCopy = new SqlBulkCopy(con)) { //Set the database table name sqlBulkCopy.DestinationTableName = "MY Table"; //[OPTIONAL]: Map the Excel columns with that of the database table sqlBulkCopy.ColumnMappings.Add("Amount", "Amount"); sqlBulkCopy.ColumnMappings.Add("Tag", "Tag"); sqlBulkCopy.ColumnMappings.Add("Exit", "Exit"); sqlBulkCopy.ColumnMappings.Add("Exit", "Exit"); con.Open(); sqlBulkCopy.WriteToServer(dtExcelData); con.Close(); } }