在IIS上托管Web应用程序时,获取外部表不是预期的格式

时间:2016-09-27 03:47:59

标签: c# asp.net iis-7.5

<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,它是一种默认数据,数据与上传的excel数据进行比较以提取结果,但问题是它给出了“外部表格没有预期的格式错误”,并且没有特定的模式。有时应用程序运行正常,没有任何错误,有时在处理过程中,它将通过此​​错误。

1 个答案:

答案 0 :(得分:0)

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