2016-09-27 21 views
0
<connectionStrings> 
    <add name ="Excel03ConString" 
     connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0}; 
         Extended Properties='Excel 8.0;HDR={1}'"/> 
    <add name ="Excel07ConString" 
     connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0}; 
         Extended Properties='Excel 12.0 Xml;HDR={1}'"/> 
</connectionStrings> 
string conStr = ""; 
string Extension = Path.GetExtension(FilePath); 
switch (Extension) 
{ 
    case ".xls": //Excel 97-03 
     conStr = ConfigurationManager.ConnectionStrings["Excel03ConString"] 
       .ConnectionString; 
     break; 
    case ".xlsx": //Excel 07 
     conStr = ConfigurationManager.ConnectionStrings["Excel07ConString"] 
        .ConnectionString; 
     break; 
} 
conStr = String.Format(conStr, FilePath, isHDR); 
OleDbConnection connExcel = new OleDbConnection(conStr); 
OleDbCommand cmdExcel = new OleDbCommand(); 
OleDbDataAdapter oda = new OleDbDataAdapter(); 
DataTable dt = new DataTable(); 
cmdExcel.Connection = connExcel; 

我上传Excel和数据导入到table.I有另一个Excel数据这是一种一默认数据和数据正在与上传的Excel数据进行比较以提取结果,但问题是它给“外部表格不在预期的格式错误”,并没有特定的模式。有时候应用程序运行得很好,没有任何错误,并且在处理过程中的某个时候,它会通过这个错误。虽然托管在IIS Web应用程序,让外部表不是预期的格式

回答

0

对我来说,问题是我忘了关闭连接。我知道它是一个愚蠢的错误,但如果你更好地得到这个错误,检查是否所有的连接都关闭了,并且所有的对象都被妥善处理了。谢谢

相关问题