2016-09-27 8 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をアップロードしての一種である別のExcelを持っているtable.IデータにデータをインポートしていますアップロードされたExcelデータと比較されて結果が抽出されますが、問題は "外部テーブルが予期しないフォーマットエラーではありません"と指定されており、特定のパターンがありません。いつかは、アプリケーションは何のエラーもなくいつか処理の途中でうまく動作しますが、このエラーが発生します。ながら、外部テーブルを取得することは期待形式ではありません

答えて

0

私の問題は、接続を閉じるのを忘れていたことでした。私はその愚かな間違いを知っているが、すべての接続が閉じられ、すべてのオブジェクトが適切に処理されているかどうかをこのエラーがよりよくチェックされている場合。感謝

関連する問題