C# 读取Excel工作表时出错
我有从c3语言读取Excel的代码:C# 读取Excel工作表时出错,c#,excel,C#,Excel,我有从c3语言读取Excel的代码: DataTable dtChildrenData = new DataTable(); OdbcConnection oConn = null; try { if (File.Exists(strSheetPath)) { oConn = new OdbcConnection();
DataTable dtChildrenData = new DataTable();
OdbcConnection oConn = null;
try
{
if (File.Exists(strSheetPath))
{
oConn = new OdbcConnection();
oConn.ConnectionString = @"DSN=Excel Files;DBQ=" + strSheetPath + @";DriverId=1046;FIL=excel 12.0;MaxBufferSize=2048;PageTimeout=5;";
OdbcCommand oComm = new OdbcCommand();
oComm.Connection = oConn;
oComm.CommandText = "Select * From [Sheet1$]";
DataSet ds = new DataSet();
OdbcDataAdapter oAdapter = new OdbcDataAdapter(oComm);
oConn.Open();
oAdapter.Fill(ds);
dtChildrenData = ds.Tables[0];
}
}
finally
{
oConn.Close();
}
return dtChildrenData;
但在IIS上部署web应用程序时出现此错误。因为它在当地运行良好
错误[IM002][Microsoft][ODBC驱动程序管理器]未找到数据源名称,并且未指定默认驱动程序
如何解决这个问题。如果回答有关配置的问题需要任何信息,请告诉我
请记住,当我在同一台机器上的IIS上部署时,它在VS本地运行得非常完美,这会导致错误您试图引用尚未创建的DSN。通过打开“管理工具”文件夹,然后启动“数据源ODBC”小程序,可以创建其中一个。
然后,您似乎必须创建一个名为Excel文件的DSN,如果您有一台当前可以使用此功能的计算机,您可能可以从该计算机复制设置。您可以通过提供文件路径,以无DSNL的方式完成此操作。见此帖:
这篇文章真的很棒,但是错误呢。为什么会来。我认为这个错误也会出现在你的代码中。